TypeError:“模块”对象不可调用Python3 [重复]
Posted
技术标签:
【中文标题】TypeError:“模块”对象不可调用Python3 [重复]【英文标题】:TypeError: 'module' object is not callable Python3 [duplicate] 【发布时间】:2021-02-15 00:34:57 【问题描述】:您好,我尝试运行 run.py,但收到一条错误消息!
运行.py
from modules import HTTPHeaders
site = "https://google.com"
HTTPHeaders(site, _verbose=True)
HTTPHeaders.py
import dns
import dns.resolver
def HTTPHeaders(site, _verbose=None):
if _verbose != None:
try:
r = http.request('GET', "http://"+site)
except:
pass
if (r.status == 200):
print("HTTP/1.1 200 OK")
else:
print(r.status)
try:
print("Content-Type : "+r.headers['Content-Type'])
except:
pass
try:
print("Server : "+r.headers['Server'])
except:
pass
try:
print("Set-Cookie : "+r.headers['Set-Cookie'])
except:
pass
我的错误:
TypeError: 'module' object is not callable
我该如何解决这个错误?谢谢你:)
【问题讨论】:
正如错误非常清楚地表明,您正在尝试调用导入的模块,这是不可能的。您打算做的是从该模块中调用具有相同名称的 函数:HTTPHeaders.HTTPHeaders(site, _verbose=True)
【参考方案1】:
试试这个:
from modules import HTTPHeaders
HTTPHeaders.HTTPHeaders(...)
您导入了模块本身,因此您必须使用点符号访问该函数。
或者像这样导入函数:
from modules.HTTPHeaders import HTTPHeaders
HTTPHeaders(...)
【讨论】:
对不起,我把答案的文字改了。 注意到了,现在非常正确:)以上是关于TypeError:“模块”对象不可调用Python3 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
加载 keras 模型,TypeError:“模块”对象不可调用
TypeError:“模块”对象不可调用Python3 [重复]
Pytorch 1.7.0 | DataLoader 错误 - TypeError:“模块”对象不可调用