TypeError:“模块”对象不可调用

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.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 callablePython告诉我我的代码试图调用无法调用的内容。我的代码试图调用什么?”
  • “代码正在尝试调用socket。应该可以调用!变量socket是我认为的吗?”
  • 我应该打印出什么是插座并检查 print socket

以上是 TypeError:“模块”对象不可调用 的全部内容, 来源链接: utcz.com/qa/430941.html

回到顶部