File "C:\Users\Administrator\Documents\Mibot\oops\blinkserv.py", line 82, in __init__ self.serv = socket(AF_INET,SOCK_STREAM) TypeError: 'module' object is not callable
为什么会出现此错误?我很困惑。
你需要知道什么才能回答我的问题?
socket是一个包含class的模块socket。
socket
class
你需要执行socket.socket(...)以下操作from socket import socket:
socket.socket(...)
from socket import socket
>>> import socket >>> socket <module 'socket' from 'C:\Python27\lib\socket.pyc'> >>> socket.socket <class 'socket._socketobject'> >>> >>> from socket import socket >>> socket <class 'socket._socketobject'>
这就是错误消息的含义: 它表示为module object is not callable,因为你的代码正在调用模块对象。模块对象是导入模块时得到的东西的类型。你试图做的是在模块对象中调用恰好与包含它的模块同名的类对象。
module object is not callable
这是一种从逻辑上分解这种错误的方法:
module object is not callablePython
print socket