Python學(xué)習(xí)_幾種存取xls/xlsx文件的方法總結(jié)
想在深度學(xué)習(xí)程序運行時動態(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')

讀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 #獲取當(dāng)前活躍的sheet,默認(rèn)是第一個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")

讀Excel文件:
from openpyxl import load_workbook
workbook = load_workbook('D:\\Py_exercise\\test_openpyxl.xlsx')
#booksheet = workbook.active #獲取當(dāng)前活躍的sheet,默認(rèn)是第一個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]
#通過坐標(biāo)讀取值
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學(xué)習(xí)_幾種存取xls/xlsx文件的方法總結(jié)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- Python讀取xlsx文件的實現(xiàn)方法
- python使用xlrd模塊讀取xlsx文件中的ip方法
- python3讀取csv和xlsx文件的實例
- 使用python庫xlsxwriter庫來輸出各種xlsx文件的示例
- Python3讀寫Excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫實例與優(yōu)劣)
- python寫入數(shù)據(jù)到csv或xlsx文件的3種方法
- Python這樣操作能存儲100多萬行的xlsx文件
- Python使用pandas和xlsxwriter讀寫xlsx文件的方法示例
- 對python中xlsx,csv以及json文件的相互轉(zhuǎn)化方法詳解
- python操作xlsx文件的包openpyxl實例
- python實現(xiàn)xlsx文件分析詳解
- Python操作Excel之xlsx文件
- 用python讀取xlsx文件
相關(guān)文章
python內(nèi)置函數(shù)anext的具體使用
本文主要介紹了python內(nèi)置函數(shù)anext的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
python flask web服務(wù)實現(xiàn)更換默認(rèn)端口和IP的方法
今天小編就為大家分享一篇python flask web服務(wù)實現(xiàn)更換默認(rèn)端口和IP的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python爬蟲入門案例之回車桌面壁紙網(wǎng)美女圖片采集
讀萬卷書不如行萬里路,學(xué)的扎不扎實要通過實戰(zhàn)才能看出來,今天小編給大家?guī)硪粋€python爬蟲案例,采集回車桌面網(wǎng)站的美女圖片,大家可以在過程中查缺補(bǔ)漏,看看自己掌握程度怎么樣2021-10-10
python2與python3的print及字符串格式化小結(jié)
最近一直在用python寫程序,對于python的print一直很惱火,老是不按照預(yù)期輸出。今天特來總結(jié)一樣print和format,也希望能幫助大家徹底理解它們2018-11-11
python GUI庫圖形界面開發(fā)之PyQt5中QMainWindow, QWidget以及QDialog的區(qū)別和選擇
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5中QMainWindow, QWidget以及QDialog的區(qū)別和選擇,需要的朋友可以參考下2020-02-02
關(guān)于pytorch中全連接神經(jīng)網(wǎng)絡(luò)搭建兩種模式詳解
今天小編就為大家分享一篇關(guān)于pytorch中全連接神經(jīng)網(wǎng)絡(luò)搭建兩種模式詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01

