溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python學習_幾種存取xls/xlsx文件的方法總結(jié)

發(fā)布時間:2020-09-17 15:33:36 來源:腳本之家 閱讀:140 作者:Joy_Shen 欄目:開發(fā)技術

想在深度學習程序運行時動態(tài)存下來一些參數(shù)。

存成Excel文件查看方便,就查了幾種方法,做個測試。因為我平常也不怎么用 Excel,簡單的存取數(shù)據(jù)就夠了。

xlwt/xlrd庫 存Excel文件:(如果存儲數(shù)據(jù)中有字符,那么寫法還有點小小的變化)

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') 

Python學習_幾種存取xls/xlsx文件的方法總結(jié)

讀Excel文件:(同樣是對于數(shù)值類型數(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) #用索引取第一個sheet
booksheet = workbook.sheet_by_name('Sheet 1') #或用名稱取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 庫 存Excel文件:

from openpyxl import Workbook
 
workbook = Workbook()
booksheet = workbook.active #獲取當前活躍的sheet,默認是第一個sheet
#存第一行單元格cell(1,1)
booksheet.cell(1,1).value = 6 #這個方法索引從1開始
booksheet.cell("B1").value = 7
#存一行數(shù)據(jù)
booksheet.append([11,87])
workbook.save("test_openpyxl.xlsx")

Python學習_幾種存取xls/xlsx文件的方法總結(jié)

讀Excel文件:

from openpyxl import load_workbook
 
workbook = load_workbook('D:\\Py_exercise\\test_openpyxl.xlsx')
#booksheet = workbook.active #獲取當前活躍的sheet,默認是第一個sheet
sheets = workbook.get_sheet_names() #從名稱獲取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]
#通過坐標讀取值
cell_11 = booksheet.cell('A1').value
cell_11 = booksheet.cell(row=1, column=1).value

原理上其實都一樣,就寫法上有些差別。

其實如果對存儲格式?jīng)]有要求的話,我覺得存成 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) 

因為它讀起來非常簡單:

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) 

以上這篇Python學習_幾種存取xls/xlsx文件的方法總結(jié)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI