將xlwings中的讀寫功能封裝爲.py文件,並在其他文件中用import導入

今天嘗試了一下面向對象的編程模式,似乎有點爽啊
寫了一個py文件xlwplus.py如下,想通過引入這個包實現一鍵讀/寫,通過創建帶默認值(工作簿1,Sheet1,A1)地址的實例,不必每次都輸入地址那麼麻煩。當然也可以通過修改屬性的方式對位置進行修改。

import xlwings as xw
class xl(object):
    def __init__(self,Book='工作簿1',Sheet='Sheet1',Range='A1'):
        self.Book=Book
        self.Sheet=Sheet
        self.Range=Range
    #通過手動輸入改寫地址的方法,可分別改寫,也可一起改寫:
    def getbook(self):
        global Book
        Book=input('請輸入工作簿名稱:')
    def getsheet(self):
        global Sheet
        Sheet=input('請輸入工作表名稱:')
    def getrange(self):
        global Range
        Range=input('請輸入區域表達式:')    
    def gets(self):
        self.getbook()
        self.getsheet()
        self.getrange()
    #讀取特定Book、Sheet、Range的方法,導出一個list:
    def readL(self):
        readList=xw.books[Book].sheets[Sheet].range(Range).value
        print(readList)
        return readList
    #在特定Book、Sheet、Range的方法寫入一個list:
    def writeL(self,List):
        xw.books[self.Book].sheets[self.Sheet].range(self.Range).value=List
        return

在其他文件中的引用(能引用的前提是被引用的.py文件必須在當前文件夾或/lib/文件夾中,參考https://jingyan.baidu.com/article/08b6a591810daf14a8092204.html):

from xlwplus import *#如果重複運行提示reloaded可以忽略
xl=xl()

創建實例後就可以對實例進行修改、讀寫啦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章