Python——》CSV文件读写

1、数据读成列表

"""CSV文件读写"""
import csv


with open(file = r"D:\Study\pythonProject\file\20251128.CSV",mode='r',encoding="utf8") as file:
    csv_result = csv.reader(file,delimiter='|')
    csv_list = [i for i in csv_result]
    print('把csv的格式数据,输出为列表:',csv_list)

运行结果:

D:\Study\pythonProject\venv\Scripts\python.exe D:/Study/pythonProject/PythonBasic/Test1128.py
把csv的格式数据,输出为列表: [['username,password,verifycode'], ['zhangsan,123456,123123'], ['lisi,123456,123123'], ['wangwu,123456,123123']]

2、把列表数据写入CSV文件

"""把列表数据写入csv文件"""
userinfo = [['wuji','123456','123456'],['mingjun','123456','123456']]
with open(file = r"D:\Study\pythonProject\file\2025112801.CSV",mode='w',encoding="utf8",newline='') as file:
    csv_writer = csv.writer(file,delimiter = ',')
    csv_writer.writerows(userinfo)

运行结果:

2025112801.csv

wuji,123456,123456
mingjun,123456,123456

3、把csv数据读成字典,默认第一行字段为keys

"""把csv数据读成字典,默认第一行字段为keys"""
with open(file = r"D:\Study\pythonProject\file\20251128.CSV",mode='r',encoding="utf8") as file:
    csv_dict = csv.DictReader(file)
    csv_dict_data = [dict(i)for i in csv_dict]
    print('把csv数据读成字典:',csv_dict_data)

运行结果:

把csv数据读成字典: [{'username': 'zhangsan', 'password': '123456', 'verifycode': '123123'}, {'username': 'lisi', 'password': '123456', 'verifycode': '123123'}, {'username': 'wangwu', 'password': '123456', 'verifycode': '123123'}]

4、把csv数据读成字典,指定字段为keys

"""把csv数据读成字典,指定字段为keys"""
with open(file = r"D:\Study\pythonProject\file\2025112801.CSV",mode='r',encoding="utf8") as file:
    csv_dict = csv.DictReader(file,fieldnames = ['user','pwd','vfc'])
    csv_dict_data = [dict(i)for i in csv_dict]
    print('把csv数据读成字段,指定列名:',csv_dict_data)

运行结果:

把csv数据读成字段,指定列名: [{'user': 'wuji', 'pwd': '123456', 'vfc': '123456'}, {'user': 'mingjun', 'pwd': '123456', 'vfc': '123456'}]

5、写入字典到CSV文件

data = [{'name':'zhangshan','age':18},{'name':'lisi','age':21}]
with open(file=r'D:\Study\pythonProject\file\2025112802.CSV',mode='w',encoding='utf8',newline='') as file:
    csv_writer_data = csv.DictWriter(file,fieldnames=['name','age'],delimiter = ',')
    csv_writer_data.writeheader()
    csv_writer_data.writerows(data)

运行结果:

2025112802.csv

name,age
zhangshan,18
lisi,21

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值