csv文件写入中文乱码问题以及读写错误
在python2.7中,运行程序以后出现以下错误。
1 Traceback (most recent call last): 2 1 3 File "C:/Users/Administrator/Desktop/python_code/untitled0.py", line 57, in <module> 4 file=open('da.csv', 'w',newline='') 5 TypeError: 'newline' is an invalid keyword argument for this function
通过度娘搜索后才知道,这是由于python3.x版本中open()函数的用法不一样。
1 # 把 file=open('da.csv', 'w',newline='')改成下面这个即可解决 2 file=open('da,csv','wb') # python2.x中使用“wb”就能避免出现空行 3 file.write(codecs.BOM_UTF8) # 解决中文乱码问题
解决这个问题需要再开头加上下面这行代码:
1 import sys 2 import codecs 3 reload(sys) 4 sys.setdefaultencoding('utf-8')
总结:
虽然是个小小的错误,但是没有搞清楚之前还是想了半天,找不到错误的原因。
编程能力还是有待提高,得多动手练习,才能在一个一个的错误中逐渐成长起来。
排解焦虑的最好方法,就是立即行动。