python操作讀寫excel,csv檔案。 csv-xlrd-xlwt模組引入
阿新 • • 發佈:2021-12-27
python寫.csv檔案需要匯入csv庫;python讀excel依賴xlrd模組,寫excel依賴xlwt模組,話不多說,直接上程式碼。
import csv import xlrd import xlwt def csv_write_func(): """資料寫入csv檔案""" # 開啟檔案 規定編碼方式 fp = open('./ttest.csv', 'a', encoding='utf-8') # 建立csv writer物件,並將開啟的檔案的檔案描述符傳入 csv_writer = csv.writer(fp) # 將要寫的東西按行裝入列表 一行行寫入, 列表中元素在csv檔案中用逗號分割csv_writer.writerow(['姓名', '地區']) # 最後關閉檔案 fp.close() def read_excel(): """利用xlrd模組讀取excel""" # 開啟指定excel data = xlrd.open_workbook('test.xls') # data為book工作簿物件,可以訪問每張表 table = data.sheets()[0] # 通過索引順序獲取 table = data.sheet_by_index(0) # 同上 table = data.sheet_by_name('Sheet1') #按照表名獲取 # 獲取表中單元格屬性 cell_A1 = table.cell(0, 0) print(cell_A1.value) # value表示單元格內內容,可輸出檢視 cell_C4 = table.cell(2, 3) print(cell_C4.value) # 利用行列數量資訊輸出整個表格,輸出每行資訊 rows, cols = table.nrows, table.ncols for i in range(rows): print(table.row_values(i)) # table.row_values(i)表示表內第i行的內容,下表從0開始def write_excel(): """利用xlwt模組寫excel""" # 構造工作簿物件 book = xlwt.Workbook(encoding='utf-8')
# 建立新表 sheet = book.add_sheet('sheet_test', cell_overwrite_ok=True) # 單元格可以重複寫 # 和讀excel類似,利用下表行列進行內容寫入,從(0,0)(左上)開始
sheet.write(0, 0, 'zhangsan')
# 也可以先確定具體某行,再在某行的第幾個單元格寫入,下表從0開始 sheet.row(0).write(1, '男') sheet.write(0, 2, 23) sheet.col(2).width = 4000 # 單位1/20pt 可以設定列寬等屬性,tab鍵檢視其他屬性,不多贅述 book.save('test2.xls') if __name__ == '__main__': read_excel() write_excel()