当前位置:首页 » 编程语言 » pythoncsv乱码

pythoncsv乱码

发布时间: 2022-08-09 02:21:49

python读取csv文件时,数据内容含有中文,读取出错,怎么办

估计是乱码造成,需要在读取的py文件中指定编码格式:
在文件开头,设置成gbk格式import
os,sys,re,csv
reload(sys)
sys.setdefaultencoding('gbk')

❷ python读取csv文件的某一行

1.全部读到成列表然后选取行(容易超时,乱码等问题)
2.利用迭代工具,代码如下:
from itertools import islice
with open('data.tsv', 'r') as f:
for line in islice(f, 1, None):
# process data
f.close()
修改islice函数中第2个参数n即可,表示读到f文件对象的第n行

❸ python读取csv文件中文字符乱码

用chardet查下编码
然后解码 用‘utf-8’编码

❹ python怎么实现CSV批处理,并把文件名和文件夹名添加到后两列

#encoding: utf-8__author__ = 'DELL'import csvimport globimport datetimeimport sysimport osreload(sys)#中文错误sys.setdefaultencoding( "utf-8" )'''@author likehua CSV批处理'''class BatchProcessCSV: def __init__(self,inputfolder="c:\\input\\",outputfolder="c:\\output\\"): self.inputfolder=inputfolder self.outputfolder=outputfolder #批处理 def doBatchAction(self): startTime=datetime.datetime.now() print(u"开始处理...") if (os.path.exists(self.outputfolder)==False): #pass os.makedirs(self.outputfolder) list_dirs = os.walk(self.inputfolder) for root, dirs, files in list_dirs: #print i for file in files: otput=self.outputfolder+file self.readcsv2csv(self.inputfolder+file,otput) print(u"Running.........................\n") endTime=datetime.datetime.now() print(u"处理完成,耗时:%f秒"%(endTime-startTime).seconds) #读取一个csv提取部分信息生成新的CSV def readcsv2csv(self,inputfile,outputfile): with open(inputfile, 'rb') as csvfile: o=open(outputfile,"wb") #解决csv浏览乱码问题 o.write('\xEF\xBB\xBF'); writer=csv.writer(o) #读取列 将字符串转为数组 column=csvfile.readline().split(",") #print(column.index('App Release Date')) #print(column) writer.writerow(['Rank' ,'Category', 'Country ','App Name', 'Value', 'Unit' , 'App Release Date', 'Publisher Name', 'Company Name', 'Parent Company Name']) reader = csv.reader(csvfile) #table = reader[0] #Rank, Category, Store, Device, Type, Country, Period,Version, App_ID, App_Name, Value, Unit, Value_Type, AppURL, App_IAP, App_Category, App_Device, Current_Price, App_Release_Date, Publisher_ID, Publisher_Name, CompanyName, ParentCompanyName, AppNameUnified, AppFranchise, UnifiedAppID, AppFranchiseID, CompanyID, ParentCompanyID for row in reader: lenth=len(row) if lenth>10: writer.writerow([row[column.index("Rank")],row[column.index("Category")],row[column.index("Country")],row[column.index("App Name")],row[column.index("Value")],row[column.index("Unit")],row[column.index("App Release Date")],row[column.index("Publisher Name")],row[column.index("Company Name")],row[column.index("Parent Company Name")]]) #processif __name__=="__main__": csvProcess=BatchProcessCSV("c:\\input\\","e:\\output\\") csvProcess.doBatchAction()

❺ 求助大佬python3 写入CSV乱码的问题

在windows下打开需要使用gbk encode python中的中文字符。

热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:515
微博数据库设计 发布:2025-07-05 15:30:55 浏览:19
linux485 发布:2025-07-05 14:38:28 浏览:299
php用的软件 发布:2025-07-05 14:06:22 浏览:750
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:425
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:686
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:233
java的开发流程 发布:2025-07-05 12:45:11 浏览:678
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:277
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:828