建立並讀取 csv
電子表格通常會匯出為 CSV 檔案,因為它們易於讀寫。csv 檔案只包含值,逗號(或其他分隔符)和換行符。雖然該檔名為 comma seperated value
檔案,但你可以使用另一個分隔符,例如製表符 \t
等。
用 Python 建立電子表格檔案(CSV)
讓我們用 Python 建立一個 CSV 格式的檔案。我們將逗號字元用作分隔符或分隔符。
import csv
with open('persons.csv', 'wb') as csvfile:
filewriter = csv.writer(csvfile, delimiter=',',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
filewriter.writerow(['Name', 'Profession'])
filewriter.writerow(['Derek', 'Software Developer'])
filewriter.writerow(['Steve', 'Software Developer'])
filewriter.writerow(['Paul', 'Manager'])
執行此程式碼將為我們提供以下內容:
Name,Profession
Derek,Software Developer
Steve,Software Developer
Paul,Manager
你可以在你喜歡的辦公程式中匯入 persons.csv 檔案。
![用 Python 建立的電子表格檔案](/img/Tutorial/Python Database/csv.png)
讀取電子表格檔案(csv)
如果你建立了一個 csv 檔案,我們可以使用以下程式碼逐行讀取檔案:
import csv
with open('persons.csv', 'rb') as f:
reader = csv.reader(f)
# read file row by row
for row in reader:
print row
這將只顯示每一行作為列表:
['Name', 'Profession']
['Derek', 'Software Developer']
['Steve', 'Software Developer']
['Paul', 'Manager']
也許你想將它儲存到 Python 列表中。我們從 csv 檔案中獲取資料,然後將其儲存到 Python 列表中。我們使用 if
語句跳過標頭,因為它不屬於列表。完整程式碼:
import csv
names = []
jobs = []
with open('persons.csv', 'rb') as f:
reader = csv.reader(f)
# read file row by row
rowNr = 0
for row in reader:
# Skip the header row.
if rowNr >= 1:
names.append(row[0])
jobs.append(row[1])
# Increase the row number
rowNr = rowNr + 1
print names
print jobs
結果:
['Derek', 'Steve', 'Paul']
['Software Developer', 'Software Developer', 'Manager']
大多數電子表格或辦公程式都可以匯出 csv 檔案,因此我們建議你建立任何型別的 csv 檔案並使用它來玩🙂。