python读写csv文件
CSV:逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)CSV(逗号分隔值文件格式)_百度百科 (baidu.com)
python使用csv库
import csv
写入文件
写入列表
newline=''时不自动换行
writer中delimiter为分隔符,默认为逗号
with open('demo.csv', 'w', newline='') as wf:
writer = csv.writer(wf, delimiter=',')
writer.writerow(['x', 'y', 'z'])
writer.writerow([1, 2, 3])
wf.flush()
文件:
x,y,z
1,2,3
写入字典
with open('info.csv', 'w', newline='') as wf:
fieldnames = ['name', 'age']
csv_writer = csv.DictWriter(wf, fieldnames=fieldnames)
csv_writer.writeheader()
csv_writer.writerow({'name': 'xherlock1', 'age': 1})
csv_writer.writerow({'name': 'xherlock2', 'age': 2})
文件:
name age
xherlock1 1
xherlock2 2
读取文件
读取文件时候需要注意文件分隔符是否为逗号
读取每一行
with open('demo.csv') as rf:
reader = csv.reader(rf)
for row in reader:
print(row)
输出
['x', 'y', 'z']
['1', '2', '3']
读取某一列
with open('demo.csv') as rf:
reader = csv.reader(rf)
column = [row[0] for row in reader]
print(column)
输出
['x', '1']
读取字典(带表头)
with open('info.csv') as rf:
reader = csv.DictReader(rf)
for row in reader:
print(row['name'] + ' is ' + row['age'] + ' years old')
输出
xherlock1 is 1 years old
xherlock2 is 2 years old
1 条评论
~~~