Python的收集整理:csv模塊, xlrd模塊

csv模塊

寫入

import csv
address = '\test.csv'  #文件地址
#元素為字典:
#打開方式用'w',還可以添加參數encoding='utf8',參數newline=''可以避免空行                
with open(address,'w',newline='') as fout:
    cout = csv.DictWriter(fout,['Name','SumCount','DropCount','OutCount','InCount']) #[]list里的為CSV的表頭名
    cout.writeheader()   #寫入表頭
    cout.writerows(data) #data是一個列表list,其中的元素是字典dict,注意字典的key要與前面表頭名對應
    
#元素為列表:
#改為:
cout = csv.writer(fout)
cout.writerows(data)

讀取

#讀成列表:
with open(address,'r') as fin:
    cin = csv.reader(fin)
    out = [row for row in cin]
print(out)#是一個列表,每行也是個列表

#讀成字典:
#原本沒有表頭:
with open(address,'r') as fin:
    cin = csv.DictReader(fin,filenames=['first','last'])
    out = [row for row in cin]
print(out)

#原本有表頭:
with open(address,'r') as fin:
    cin = csv.DictReader(fin)
    out = [row for row in cin]
print(out)

xlrd模塊

讀取

import xlrd
address = 'test.xls'

def read_xls():
    outdata = []
    data = xlrd.open_workbook(address)
    table = data.sheets()[0]
    title = table.row_values(0)

    for row in range(2, table.nrows):
        rn = [i.strip() for i in table.row_values(row)]
        d = {k: v for k, v in zip(title, rn)}
        #print(d)
        outdata.append(d)
    return outdata
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容