本文實(shí)例為大家分享了python表格存取的具體代碼,供大家參考,具體內(nèi)容如下
xlwt/xlrd庫(kù) 存Excel文件:(如果存儲(chǔ)數(shù)據(jù)中有字符,那么寫(xiě)法還有點(diǎn)小小的變化)
import xlwt workbook = xlwt.Workbook(encoding='utf-8') booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True) #存第一行cell(1,1)和cell(1,2) booksheet.write(0,0,34) booksheet.write(0,1,38) #存第二行cell(2,1)和cell(2,2) booksheet.write(1,0,36) booksheet.write(1,1,39) #存一行數(shù)據(jù) rowdata = [43,56] for i in range(len(rowdata)): booksheet.write(2,i,rowdata[i]) workbook.save('test_xlwt.xls') 讀Excel文件:(同樣是對(duì)于數(shù)值類(lèi)型數(shù)據(jù))
import xlrd workbook = xlrd.open_workbook('D://Py_exercise//test_xlwt.xls') print(workbook.sheet_names()) #查看所有sheet booksheet = workbook.sheet_by_index(0) #用索引取第一個(gè)sheet booksheet = workbook.sheet_by_name('Sheet 1') #或用名稱(chēng)取sheet #讀單元格數(shù)據(jù) cell_11 = booksheet.cell_value(0,0) cell_21 = booksheet.cell_value(1,0) #讀一行數(shù)據(jù) row_3 = booksheet.row_values(2) print(cell_11, cell_21, row_3) >>>34.0 36.0 [43.0, 56.0] openpyxl 庫(kù) 存Excel文件:
from openpyxl import Workbook workbook = Workbook() booksheet = workbook.active #獲取當(dāng)前活躍的sheet,默認(rèn)是第一個(gè)sheet #存第一行單元格cell(1,1) booksheet.cell(1,1).value = 6 #這個(gè)方法索引從1開(kāi)始 booksheet.cell("B1").value = 7 #存一行數(shù)據(jù) booksheet.append([11,87]) workbook.save("test_openpyxl.xlsx") 讀Excel文件:
from openpyxl import load_workbook workbook = load_workbook('D://Py_exercise//test_openpyxl.xlsx') #booksheet = workbook.active #獲取當(dāng)前活躍的sheet,默認(rèn)是第一個(gè)sheet sheets = workbook.get_sheet_names() #從名稱(chēng)獲取sheet booksheet = workbook.get_sheet_by_name(sheets[0]) rows = booksheet.rows columns = booksheet.columns #迭代所有的行 for row in rows: line = [col.value for col in row] #通過(guò)坐標(biāo)讀取值 cell_11 = booksheet.cell('A1').value cell_11 = booksheet.cell(row=1, column=1).value 原理上其實(shí)都一樣,就寫(xiě)法上有些差別。
其實(shí)如果對(duì)存儲(chǔ)格式?jīng)]有要求的話,我覺(jué)得存成 csv文件 也挺好的:
import pandas as pd csv_mat = np.empty((0,2),float) csv_mat = np.append(csv_mat, [[43,55]], axis=0) csv_mat = np.append(csv_mat, [[65,67]], axis=0) csv_pd = pd.DataFrame(csv_mat) csv_pd.to_csv("test_pd.csv", sep=',', header=False, index=False) 因?yàn)樗x起來(lái)非常簡(jiǎn)單:
import pandas as pd filename = "D://Py_exercise//test_pd.csv" csv_data = pd.read_csv(filename, header=None) csv_data = np.array(csv_data, dtype=float)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林站長(zhǎng)站。
新聞熱點(diǎn)
疑難解答
圖片精選