AttributeError: 模块“socket”没有属性“AF_INET”

Nit*_*ya 1 python sockets

代码运行良好,现在显示错误

AttributeError: 模块“socket”没有属性“AF_INET”

代码如下: 模块名称不是 socket.py

import socket
client= socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host='192.168.xx.x'
port=4196
client.connect((host, port))
print("connected to IP", host,"and port", port) 
Run Code Online (Sandbox Code Playgroud)

错误:

`Traceback (most recent call last):
File "C:\Users\User\eclipse-workspace\New\soc.py", line 1, in <module>
   import socket
File "C:\Users\User\AppData\Local\Programs\Python\Python37-32\lib\socket.py", line 2, in <module>
    client=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
AttributeError: module 'socket' has no attribute 'AF_INET'
Run Code Online (Sandbox Code Playgroud)

`

blh*_*ing 6

通过堆栈跟踪,现在很明显您已经socket.py用自己的代码覆盖了标准库中的 ,因为错误发生在库路径中,C:\Users\User\AppData\Local\Programs\Python\Python37-32\lib\socket.py并且导致错误的代码显然是您的。

此时您应该重新安装 Python。或者,如果您确信这是唯一损坏的文件,您可以尝试用此处socket.py的源代码管理中的文件替换。


blh*_*ing 5

您的项目目录中可能有一个命名的模块socket.py,在这种情况下,当您执行import socket. 将项目目录中的重命名socket.py为其他名称,您的代码就可以工作了。

  • 你能在“import socket”之后执行“print(socket.__file__)”并告诉我它输出什么吗? (2认同)