首页 > 代码库 > [python]一个低级错误/xxx instance has no attribute 'xxx'/'module' object is not callable
[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 catchFormself.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 = ‘‘
我一看,xlBook这不有吗,为啥报错呢,最后上网一查发现:
我的_init_写错了,正确的写法应该是__init__,有两个下划线=。=
囧rz
总结:代码还是得常写啊=。=尤其是在一个领导盲目相信自动化(认为自动化就是全能)的公司,到时候交不出东西就完了。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。