python - Socket没有属性AF_INET?

标签 python sockets firewall udpclient

我正在尝试根据我的一本教科书进行套接字编程作业.. UDP 连接..

UDPServer.py

from socket import *
serverPort = 12000
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverSocket.bind(('', serverPort))
print('The server is ready to receive:')
while 1:
    message, clientAddress = serverSocket.recvfrom(2048)
    modifiedMessage = message.upper()
    serverSocket.sendto(modifiedMessage, clientAddress)

UDPClient.py

from socket import *
serverName = 'localhost'
serverPort = 12000
clientSocket = socket(socket.AF_INET, socket.SOCK_DGRAM)
message = raw_input('Input lowercase sentence:')
clientSocket.sendto(message,(serverName, serverPort))
modifiedMessage, serverAddress = clientSocket.recvfrom(2048)
print (modifiedMessage)
clientSocket.close()

为什么在运行客户端时会出现此错误?

Traceback (most recent call last):
  File "UDPClient.py", line 4, in <module>
    clientSocket = (socket.AF_INET, socket.SOCK_DGRAM)
AttributeError: type object 'socket' has no attribute 'AF_INET'

我在这个论坛上看了看,有人遇到了类似的问题,但他们的问题是他们有自己的 socket.py 文件,他们正在导入。我没有,我使用的是标准的 Python...

这也是一个旁注....

为什么我不能允许在 Windows 8 上访问 Python,它目前由于某种原因被阻止并且我是管理员并且是这台计算机上的唯一帐户,当我单击“允许程序通过防火墙”中的“更改设置”时(它不是灰色的out 所以它证明我是管理员),没有出现..有什么帮助吗?

最佳答案

clientSocket = socket(socket.AF_INET, socket.SOCK_DGRAM)

如果你打算像这样调用 AF_INET,你应该 import socket 而不是 from socket import * 否则就这样做

clientSocket = socket(AF_INET, SOCK_DGRAM)

关于python - Socket没有属性AF_INET?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22843636/

相关文章:

node.js - socket io admin ui不显示所有信息

security - 禁用ec2服务器上的防火墙端口22后启用它

linux - 难以访问 Docker 的 API

python - 针叶林 'i586-linux-gnu-gcc' : No such file or directory

javascript - 实时通知应用程序 DateTimeField 问题

c - 如何以编程方式远程登录并通过TCP套接字发出命令?

c - 如何在 Linux C 中使用原始套接字接收 bpdu 流量

oracle - 设置 USE_SHARED_SOCKET 以通过防火墙访问 Oracle 数据库

python - Django render_to_response 渲染?

python - 使用 --user 安装时 pip 位于何处?