Python处理CSV文件的一些问题

本文讨论了使用Python处理CSV文件时遇到的两个主要问题:1) 写入包含中文字符的CSV文件时出现的乱码问题,以及如何解决;2) 写入CSV时mode参数的选择及其影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Python写入CSV乱码问题:
在写入CSV文件时,如果含有中文字符,再次读取该csv文件时则会发生编码错误。以下方式可以解决

data.to_csv("test.csv", index=False, encoding='utf-8')

2.Python写入CSV mode参数选择问题:

1)读取CSV(看看CSV里有什么,把这里面的值存到字典里)
import csv
# 1.找到打开的路径,通过open打开文件,
#声明打开的方式mode,编码为coding=utf-8
csv_file =open(r"D:\PythonDome\data\data.csv",mode='r',encoding='utf-8')
# 2.导入csv包,读取打开的文件
csv_data = csv.reader(csv_file)
# 3.通过for循环遍历出读取的文件,存入字典
for i in csv_data:    
csv_dict = {'v1':i[0],
            'v2':i[1],
            'v3':i[2],
            'v4':i[3],
            'v5':i[4]}
# 4.关闭
csv_file.close()

(2)写入csv文件(把python里面的dataframe等存到 CSV文档里)
#注意:w:覆盖原来的所有内容     a+:追加
 # 导入csv模块
 import csv
 #1.构造写入的数据
 list_data = ['我','是','一','个','88','qing','nian']

 # 2.找到被写入文件的路径,通过open方法打开,声明打开的方式mode为写,# 编码格式utf-8,newline忽略空白行
 csv_w_list=open(r"D:\PythonDome\data\data.csv",mode='w',encoding='utf-8',newline=' ')
# 3.通过csv写入的方法声明往哪里写,声明写入的数据格式
dialect='excel'
csv_data=csv.writer(csv_w_list,dialect='excel')
# 4.在往哪里写的基础上,具体写入内容
csv_data.writerow(list_data)
#daraframe可以直接写入
df.to_csv(file_path,mode="a",encoding="utf-8")

# 5.关闭文件
csv_w_list.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值