[python]關於錯誤/xxx instance has no attribute 'xxx'/'module' object is not callable


今天在寫代碼的時候出現了以下兩個錯誤:

TypeError: 'module' object is not callable

AttributeError: excelChange instance has no attribute 'xlBook'

上網一查,發現第一個錯誤是由於python中有兩種不同的引用方式 import xxx 和 from xxx import *,前者在代碼中引用時需要加上模塊名和具體的方法或屬性,具體方法如下:

import catchForm

self.xls = catchForm.catchForm()

而from xxx import *則可以直接引用:

from catchForm import *

self.xls = catchForm()

 

 

解決完第一個錯誤后,馬上又遇到了第二個錯誤,代碼如下:

class excelChange:
    """一個win32com的封裝類,將其所有方法封裝在內,
                        統一調用
    """
    def _init_(self,filename = None):#傳入文件名參數,如果有的話,沒有就把None賦值給filename,自個再新建一個
        self.xlApp = Dispatch('Excel.Application')
        if filename:
            self.filename = filename
            self.xlBook = self.xlApp.Workbooks.Open(filename)
        else:
            self.xlBook = self.xlApp.Workbooks.Add()
            self.filename = ''

上網一查發現:

_init_寫錯了,正確的寫法應該是__init__,有兩個下划線

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM