UDP套接字Python

时间:2013-02-12 12:41:30

标签: python sockets udp

我有以下源代码:

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # UDP
s.bind(('', 9800))
try:
    while True:
        data, addr = s.recvfrom(256) #buffer size is 256 bytes
        print data, adrr
finally:
    s.close()

当我执行它时,我收到以下错误:

Traceback (most recent call last):
   File "socket.py", line 1, in 
     import socket
   File "C:\Users\Victor\Desktop\socket.py", line 3, in 
     s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # UDP
AttributeError: 'module' object has no attribute 'AF_INET'

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:7)

更改脚本的名称。它试图导入自己。

答案 1 :(得分:1)

您的socket.py与stdlib socket模块发生冲突。你应该重命名它。

答案 2 :(得分:1)

您不能将Python源文件命名为与要导入的模块相同的名称。 Python解释器将导入您自己的源文件。