Как правильно вызвать модуль сокета в Python - PullRequest
1 голос
/ 10 апреля 2019

Я создаю простой UDP-клиент, однако я получаю сообщение об ошибке «сокет не вызывается». Я проверил код, и он может найти проблему

Я попытался импортировать модуль, используя "from socket import *", но он не сработал.

import socket
serverName = 'hostname'
serverPort = 1200
clientSocket = socket(socket.AF_INET, socket.SOCK_DGRAM)
message = 'Testing the system'
clientSocket.sendto(message, (serverName, serverPort))
modifiedMessage, serverAddress = clientSocket.recvfrom(2048)
print(modifiedMessage)
clientSocket.close()

Ответы [ 3 ]

1 голос
/ 10 апреля 2019

вам нужно импортировать сокет из модуля сокета следующим образом

import socket
from socket import socket as sk
serverName = 'hostname'
serverPort = 1200
clientSocket = sk(socket.AF_INET, socket.SOCK_DGRAM)

и т.д.

0 голосов
/ 10 апреля 2019

Ваш код должен работать, вам просто нужно изменить

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

на

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

Вы пытаетесь передать входные данные в модуль (socket) вместо функциивнутри модуля (socket.socket)

0 голосов
/ 10 апреля 2019

Я думаю, что вы назвали вашу программу как socket.py или сохранили вашу программу в папке, содержащей socket.py.Либо переименуйте свой файл, либо удалите их

...