创建并读取 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 文件并使用它来玩🙂。