2
我使用python 2.7的openpyxl來操縱一些工作簿。我爲類工作表實現了我自己的方法,除非在嘗試訪問它們時找不到它們。我在Windows上,我已經將以下代碼添加到site-packages/openpyxl/worksheet/worksheet.py。源代碼here。Python。添加自定義方法到現有的網站包
class Worksheet(_WorkbookChild):
"""
Library defined methods here.
"""
#My Method.
def hello_world(self):
print "Hello from worksheet."
當我打開的工作簿,並嘗試和類工作表的範圍之內調用我的函數它將引發錯誤的,即使它被定義「沒有屬性」(正確?)。
import openpyxl
wb = openpyxl.load_workbook('helloworld.xlsx')
sheet = wb.get_active_sheet()
sheet.hello_world()
AttributeError: 'Worksheet' object has no attribute 'hello_world'
我是否需要以不同的方式更新現有庫?我刪除了.pyc,重新編譯並仍然收到相同的錯誤。
如果您使用Python 3,混合選項卡和空格將引發異常。建議**總是**使用空格並相應地配置您的編輯器。 –