使用Python处理CSV文件

读取CSV文件

# 读取CSV文件
import csv
with open('csv1.csv', encoding='utf8') as f1:
    # 建立reader对象
    csvfile = csv.reader(f1)
    # 将数据转换为列表
    listf = list(csvfile)
print(listf)

# 循环输出reader对象
with open('csv1.csv', encoding='utf8') as f1:
    csvf = csv.reader(f1)
    for row in f1:
        print(row)

使用列表读取具体内容

# 使用列表读取具体内容
with open('csv1.csv', encoding='utf8') as f1:
    # 建立reader对象
    csvfile = csv.reader(f1)
    # 将数据转换为列表
    listf = list(csvfile)
print(listf[0][0], listf[0][1])

写入csv文件

# 写入csv文件
with open('csv1.csv', 'w', encoding='utf8') as f2:
# 建立writer对象
csvw = csv.writer(f2)
csvw.writerow(['小明', 17, '男']) # 写入一行数据
csvw.writerows([['小明', 17, '男'],['小明', 17, '男'],['小明', 17, '男']]) # 写入多行数据

delimiter更改分隔符,默认是逗号

# delimiter更改分隔符,默认是逗号
with open('csv1.csv', 'w', encoding='utf8') as f3:
    csvw2 = csv.writer(f3, delimiter='\t')
    csvw2.writerows([['小明', 17, ''],['小明', 17, ''],['小明', 17, '']])

写入字典数据

# 写入字典数据
with open('csv2.csv', 'w', encoding='utf8') as f4:
    fields = ['name', 'age', 'sex']
    # 建立writer对象
    dic = csv.DictWriter(f4, fieldnames=fields, delimiter='\t')
    # 写入标题
    dic.writeheader()
    dic.writerow({'name':'jack', 'age':20, 'sex':'male'})
    dic.writerow({'name': 'jack', 'age': 20, 'sex': 'male'})
    dic.writerow({'name': 'jack', 'age': 20, 'sex': 'male'})

 

posted @ 2020-09-24 15:21  ☞@_@  阅读(211)  评论(0编辑  收藏  举报