十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶(hù) + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂(yōu)售后,網(wǎng)站問(wèn)題一站解決
如何在python中使用xlwings庫(kù)讀寫(xiě)excel?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
應(yīng)用:一個(gè)應(yīng)用(一個(gè)xlwings程序):app = xw.App(visible=True, add_book=False)
工作簿(book):excel文件(excel程序):wb = app.books.add()
工作表(sheet):sheet:sht = wb.sheets['sheet1']
范圍:行列:sht.range('a6').expand('table').value = [['a','b'],['d','e']]
import xlwings as xw # 寫(xiě)到Excel中去 # add_book也就是是否增加excel 的book # visible=True 表示操作過(guò)程是否可顯示 app = xw.App(visible=True, add_book=False) # 工作簿 wb = app.books.add() # 頁(yè)sheet1 sht = wb.sheets['sheet1'] # 單個(gè)值插入 # sht.range('A1').value = '產(chǎn)品名稱(chēng)' # sht.range('B1').value = '編號(hào)' # sht.range('C1').value = '價(jià)格' # sht.range('A2').value = '不告訴你' # sht.range('B2').value = 'n110110' # sht.range('C2').value = '688.26' # sht.range('A3').value = '不告訴你1' # sht.range('B3').value = 'n1101101' # sht.range('C3').value = '688.261' # 插入一行 # sht.range('a1').value = [1,2,3,4] # 等同于 # sht.range('a1:d4').value = [1,2,3,4] # 插入一列 # sht.range('a2').options(transpose=True).value = [5,6,7,8] # 同時(shí)插入行列 # sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']] # 在當(dāng)前目錄下生成文件 wb.save('demo1.xlsx') wb.close() app.quit() # import os # path2=os.path.abspath('.') # 表示當(dāng)前所處的文件夾的絕對(duì)路徑 # print(path2) # path3=os.path.abspath('..') # 表示當(dāng)前所處的文件夾上一級(jí)文件夾的絕對(duì)路徑 # print(path3) # 關(guān)于路徑問(wèn)題,切換到指定目錄即可
a、插入單個(gè)值:sht.range('A1').value = '產(chǎn)品名稱(chēng)'
b、插入一行:sht.range('a1').value = [1,2,3,4] 或者 sht.range('a1:d4').value = [1,2,3,4]
c、插入一列:sht.range('a2').options(transpose=True).value = [5,6,7,8]
d、同時(shí)插入行列:sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]
就是按照xlwings庫(kù)邏輯(應(yīng)用->工作簿->工作表->范圍)操作即可,打開(kāi)的記得關(guān)就好了,該讀就讀,該寫(xiě)就寫(xiě)
app = xw.App(visible=True, add_book=False) # 工作簿 wb = app.books.add() # 頁(yè)sheet1 sht = wb.sheets['sheet1'] # 同時(shí)插入行列 sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']] # 在當(dāng)前目錄下生成文件 wb.save('demo1.xlsx') wb.close() app.quit()
print(sht.range('a1:c7').value),這樣讀行,讀列,還是同時(shí)讀行讀列都可以
# 讀取行列:讀取A1:C7(直接填入單元格范圍就行了),得到一個(gè)二維列表 print(sht.range('a1:c7').value) # 讀取行:得一維列表 # print(sht.range('a1:c1').value) # 讀取列:得一維列表 # print(sht.range('a1:a7').value)
import xlwings as xw app = xw.App(visible=True, add_book=False) # 顯示警報(bào)() app.display_alerts = True # 屏幕更新(應(yīng)用中) app.screen_updating = True # 打開(kāi)文件 wb = app.books.open('demo1.xlsx') sht = wb.sheets['sheet1'] # 遍歷讀取單元格 # column_name = ['A','B',"C"] # data_list = [] #將數(shù)據(jù)存到list中去 # for i in range(3): # 遍歷行 # row_list = [] # for j in range(3): #遍歷列 # str1 = column_name[j]+str(i+1) # a = sht.range(str1).value # row_list.append(a) # print(a) # pass # data_list.append(row_list) # pass # print(data_list) # 讀取行列:讀取A1:C7(直接填入單元格范圍就行了),得到一個(gè)二維列表 print(sht.range('a1:c7').value) # 讀取行:得一維列表 # print(sht.range('a1:c1').value) # 讀取列:得一維列表 # print(sht.range('a1:a7').value) wb.save() wb.close() app.quit()
""" xlwings介紹 xlwings 是 Python 中操作Excel 的一個(gè)第三方庫(kù), 支持.xls讀寫(xiě),.xlsx讀寫(xiě) 操作非常簡(jiǎn)單,功能也很強(qiáng)大 1、安裝庫(kù) pip3 install xlwings 2、引入庫(kù) import xlwings as xw 3、 應(yīng)用->工作簿->工作表->范圍 應(yīng)用:一個(gè)應(yīng)用(一個(gè)xlwings程序): app = xw.App(visible=True, add_book=False) 工作簿(book): excel文件(excel程序):wb = app.books.add() 工作表(sheet): sheet:sht = wb.sheets['sheet1'] 范圍:行列: sht.range('a6').expand('table').value = [['a','b'],['d','e']] xlwings.App(visible=True,add_book=False) 其中參數(shù)visible(表示處理過(guò)程是否可視,也就是處理Excel的過(guò)程會(huì)不會(huì)顯示出來(lái)),add_book(是否打開(kāi)新的Excel程序,也就是是不是打開(kāi)一個(gè)新的excel窗口) """ import xlwings as xw # 寫(xiě)到Excel中去 # add_book也就是是否增加excel 的book # visible=True 表示操作過(guò)程是否可顯示 app = xw.App(visible=True, add_book=False) # 工作簿 wb = app.books.add() # 頁(yè)sheet1 sht = wb.sheets['sheet1'] # 單個(gè)值插入 # sht.range('A1').value = '產(chǎn)品名稱(chēng)' # sht.range('B1').value = '編號(hào)' # sht.range('C1').value = '價(jià)格' # sht.range('A2').value = '不告訴你' # sht.range('B2').value = 'n110110' # sht.range('C2').value = '688.26' # sht.range('A3').value = '不告訴你1' # sht.range('B3').value = 'n1101101' # sht.range('C3').value = '688.261' # 插入一行 # sht.range('a1').value = [1,2,3,4] # 等同于 # sht.range('a1:d4').value = [1,2,3,4] # 插入一列 # sht.range('a2').options(transpose=True).value = [5,6,7,8] # 同時(shí)插入行列 # sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']] # 在當(dāng)前目錄下生成文件 wb.save('demo1.xlsx') wb.close() app.quit() # import os # path2=os.path.abspath('.') # 表示當(dāng)前所處的文件夾的絕對(duì)路徑 # print(path2) # path3=os.path.abspath('..') # 表示當(dāng)前所處的文件夾上一級(jí)文件夾的絕對(duì)路徑 # print(path3) # 關(guān)于路徑問(wèn)題,切換到指定目錄即可
import xlwings as xw app = xw.App(visible=True, add_book=False) # 顯示警報(bào)() app.display_alerts = True # 屏幕更新(應(yīng)用中) app.screen_updating = True # 打開(kāi)文件 wb = app.books.open('demo1.xlsx') sht = wb.sheets['sheet1'] # 遍歷讀取單元格 # column_name = ['A','B',"C"] # data_list = [] #將數(shù)據(jù)存到list中去 # for i in range(3): # 遍歷行 # row_list = [] # for j in range(3): #遍歷列 # str1 = column_name[j]+str(i+1) # a = sht.range(str1).value # row_list.append(a) # print(a) # pass # data_list.append(row_list) # pass # print(data_list) # 讀取行列:讀取A1:C7(直接填入單元格范圍就行了),得到一個(gè)二維列表 print(sht.range('a1:c7').value) # 讀取行:得一維列表 # print(sht.range('a1:c1').value) # 讀取列:得一維列表 # print(sht.range('a1:a7').value) wb.save() wb.close() app.quit()
看完上述內(nèi)容,你們掌握如何在python中使用xlwings庫(kù)讀寫(xiě)excel的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!