#python #sockets
Вопрос:
Я пытаюсь запустить этот код на Python:
import socket HOST = '192.168.1.32' PORT = 29299 socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) socket.connect((HOST, PORT)) socket.send("Hello World".encode())
и еще до того, как сокет будет подключен, я получаю ошибку OSError: [Errno 9] Плохой дескриптор файла, в чем может быть проблема? Я использую macOS 12.0.1 с выключенным брандмауэром (по какой-то причине тот же код хорошо работает на ПК).
Полное сообщение об обратном отслеживании ошибок:
Traceback (most recent call last): File ".../Client.py", line 9, in lt;modulegt; my_socket.connect((HOST, PORT)) OSError: [Errno 9] Bad file descriptor
Комментарии:
1. Пожалуйста, обновите вопрос, чтобы включить полное сообщение об обратном отслеживании ошибок.
2. Не называйте свою переменную
socket
, так как это противоречит имени импортированного пакета.3. @JohnGordon закончил, в любом случае, изменение имени var не помогло..
4. В вашем примере кода
connect()
находится строка 6, но в сообщении об ошибке указано строка 9. Есть ли какой-нибудь важный код, который вы не показали?5. У меня есть
#!/usr/bin/env python3
, а затем разрыв строки в начале @JohnGordon