#-*- coding: UTF-8 -*- import csv import os def WriteToCsv(): '''寫CSV文件''' titls = ['序號', '鏈接', '備注'] data = [ ['1', 'http://www.xiaoheiseo.com/', '小黑'], ['2', 'http://www.baidu.com/', '百度'], ['3', 'http://www.jd.com/', '京東'] ] csvfile = os.path.join(os.getcwd(),'csvtest.csv') with open(csvfile, 'wb') as f: writer = csv.writer(f) # 標題 writer.writerow(titls) # 內容 writer.writerows(data) def ReadCSV(): '''讀取CSV文件''' filename = os.path.join(os.getcwd(), 'csvtest.csv') if os.path.exists(filename): with open(filename, 'r') as f: reader = csv.reader(f) for item in reader: print item # WriteToCsv() # ReadCSV()
上述代碼,打開CSV文件,現在正常,但是在別人機器上打開是亂碼,后來在網上查下,下加兩行代碼就了
首先引入
import codecs
然后增加
f.write(codecs.BOM_UTF8)
完整代碼如下:
#-*- coding: UTF-8 -*- import csv import os import codecs def WriteToCsv(): '''寫CSV文件''' titls = ['序號', '鏈接', '備注'] data = [ ['1', 'http://www.xiaoheiseo.com/', '小黑'], ['2', 'http://www.baidu.com/', '百度'], ['3', 'http://www.jd.com/', '京東'] ] csvfile = os.path.join(os.getcwd(),'csvtest.csv') with open(csvfile, 'wb') as f: f.write(codecs.BOM_UTF8) writer = csv.writer(f) # 標題 writer.writerow(titls) # 內容 writer.writerows(data) def ReadCSV(): '''讀取CSV文件''' filename = os.path.join(os.getcwd(), './data/20170708.csv') if os.path.exists(filename): with open(filename, 'r') as f: reader = csv.reader(f) for item in reader: print item # WriteToCsv() # ReadCSV()
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。