python写入csv文件中文乱码解决方案

今天修改程序,需要写入csv文件,发现中文会乱码,后来查了下,可以设置文件写入属性后,就可以解决:

import csv
import codecs
list=['a101','b101']
sumlist=[]
for str in list:
templist=[]
templist.append('a')
templist.append('b')
templist.append('c')
sumlist.append(templist)
csvfile = file('csv_test.csv', 'wb')
csvfile.write(codecs.BOM_UTF8)
writer = csv.writer(csvfile)
writer.writerow(['姓名', '年龄', '电话'])

#data = [
# ('小河', '25', '1234567'),
# ('小芳', '18', '789456')
#]
writer.writerows(sumlist)

csvfile.close()

最为关键的一句就是:csvfile.write(codecs.BOM_UTF8),有了这一句,中文就能正常写入

posted @ 2016-11-29 21:59  vinsonxie  阅读(18249)  评论(0编辑  收藏  举报