您好,登錄后才能下訂單哦!
這篇“xlwings怎么安裝和使用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“xlwings怎么安裝和使用”文章吧。
Python 操作 Excel 的模塊,網上提到的模塊大致有:xlwings
、xlrd
、xlwt
、openpyxl
、pyxll
等,他們提供的功能歸納起來無非有兩種形式:
1、用 Python 讀寫 Excel
文件,實際上就是讀寫有格式的文本文件,操作 excel
文件和操作 text
、csv
文件沒有區別,Excel
文件只是用來儲存數據。
2、除了操作數據,還可以調整Excel
文件的表格寬度、字體顏色等。另外需要提到的是用 COM
調用 Excel
的 API
操作 Excel
文檔同樣也是可行的,相當麻煩基本和 VBA
沒有區別。
為什么 xlwings
能讓 Excel
飛起來呢,因為xlwings
支持 Excel
的讀寫操作。具體使用請參照官網 ,一切技術的出現都是為了滿足人的惰性,因此 xlwings
能讓繁瑣的工作簡單化、簡潔化。
Xlwings
是開源且免費的工具,能夠非常方便的讀寫 Excel
文件中的數據,并且能夠進行單元格格式的修改。
xlwings
還可以和 matplotlib
、numpy
以及 pandas
無縫連接,支持讀寫 numpy
、pandas
數據類型,將 matplotlib
可視化圖表導入到 excel
中。
最重要的是 xlwings
可以調用 Excel
文件中 VBA
寫好的程序,也可以讓 VBA
調用用 Python
寫的程序。
xlwings 能夠非常方便的讀寫 Excel
文件中的數據,并且能夠進行單元格格式的修改
xlwings 可以和 Matplotlib
以及 Pandas
無縫連接
xlwings 可以調用 Excel
文件中 VBA
寫好的程序,也可以讓 VBA
調用 Pytho
n 寫的程序。
xlwings 開源免費,并且一直在更新
和其他模塊使用一樣,xlwings
在使用之前也需要安裝,本文環境為 Python 3.6 版本的 Windows 環境。
安裝xlwings
的最簡單方法是通過pip
:
pip install xlwings
或者使用conda:
conda install xlwings
再或者
conda install -c conda-forge xlwings
import xlwings as xw
連接到工作簿最簡單便捷的方法是由 xw.Book 提供:它在所有應用程序實例中查找該工作簿并返回錯誤,但如果同一個工作簿在多個實例中打開,要連接到活動應用程序實例中的工作簿,則需要使用 xw.books
并引用特定應用程序, 使用區別如下:
Header1 | Header2 | Header3 |
---|---|---|
New book | xw.Book() | xw.books.add() |
Unsaved book | xw.Book('Book1') | xw.books['Book1'] |
UBook by (full)name | xw.Book(r'D:/test/file.xlsx') | xw.books.open(r'D:/test/file.xlsx') |
注:在 Windows 上指定文件路徑時,應該通過在字符串前放置一個 r 來使用原始字符串,或者使用雙反斜杠:D:\Test\file.xlsx
# 活動應用程序(即Excel實例) app = xw.apps.active # 活動工作簿 wb = xw.books.active # 在活動app wb = app.books.active # 在特定app # 活動工作表 sht = xw.sheets.active # 在活動工作簿 sht = wb.sheets.active # 在特定工作簿 # 活動工作表的Range xw.Range('A1') #在活動應用程序的活動工作簿的活動表上
以下代碼展示相關基本操作:
打開表格
引用工作表
引用單元格
引用區域
寫入數據(數據寫入默認按照行寫入,如果要指定相應的列寫入則需要添加相應參數,指定參數為:transpose = True)
讀取數據
import xlwings as xw # 打開表格 file_path = r'D:/test/file.xlsx' xw.Book(file_path) # 固定打開表格 xw.books.open(file_path) # 頻繁打開表格 # 引用工作表 sht = wb.sheets['sheet1'] # 引用單元格 rng = xw.Range('A1') # rng = sht[0,0] # 此代碼第一行的第一列即a1,相當于 pandas 的切片 # 引用區域 rng = sht.range('a1:a5') # rng = sht['a1:a5'] # rng = sht[:5,0] # 寫入數據 sht.range('a1').value = 'Hello Excel' # 指定一個單元格寫入數據 # 按行寫入數據 sht.range('a1').value = [1, 2, 3, 4,5,6,7,8] # 按照列寫入數據 sht.range('a2').options(transpose=True).value = [2, 3, 4, 5, 6, 7, 8] # 按照二維列表的方式寫入數據 sht.range('a9').expand('table').value = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i'],['j', 'k', 'l']] # 讀取寫入的數據 print(sht.range('A1:D5').value)
xlwings
結合 Matplotlib
使用能講圖畫貼入到 Excel
中,具體使用 pictures.add()
方法就可以很容易地將Matplotlib
圖作為圖片粘貼到表格中。詳細代碼如下:
fig = plt.figure() # 指定畫布 # plt.plot([1, 2, 3, 4, 5]) plt.plot([36,5,3,25,78]) plt.plot([9,10,31,45]) plt.plot([6,14,45,31]) sht = xw.Book(r'G:/test/test.xlsx').sheets[0] sht.pictures.add(fig, name='myplt', update=True)
以上就是關于“xlwings怎么安裝和使用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。