Я пытаюсь работать в localhost (Windows 10), но s.accept() не отвечает

#python #networking

#python #сеть

Вопрос:

Я пытаюсь создать сеть отправителей и получателей на своем ноутбуке (localhost). код работает хорошо до s.accept() , но после этого ничего не происходит или (может быть, компиляция). Я проверил, напечатав 2 строки «ok1» и «ok2». «ok1» отображается, но «ok2» никогда, поэтому s.accept () не работает, насколько я понял. Как это исправить, пожалуйста…[я новичок в сокете]

код ниже:

 s.listen(5)
print('Sender ready and is listening')
while (True):
    # to accept all incoming connections
    print("ok1")#its printing 
    clientsocket, address = s.accept()
    print("ok2")#its not printing
    print("Receiver "   str(address)   " connected")
    # create a different thread for every
    # incoming connection
    client(clientsocket, address)
  

Комментарии:

1. Это должно сработать. Как вы пытаетесь подключиться к вашему серверному сокету?

2. @Serge Я загрузил файл отправителя и получателя. я буду рад, если вы увидите это, пожалуйста. отправитель: pastebin.com/wtYiCt8f приемник: pastebin.com/L2EcUYka

3. Не удается воспроизвести с помощью Python 3.6: я запустил server.py в одном окне (консоль), и он напечатал до ok1 . Затем я запустил receiver.py другую консоль и снова получил ok2 Receiver ('127.0.0.1', xxxx) connected (xxxx — случайный порт) ok1 и ошибку File "C:...sender.py", line 40, in run bitstring = str(raw_input("enter bit string")) NameError: name 'raw_input' is not defined . raw_input это старая функция Python2 и только input в Python3.