2016-05-31 3 views
0

я пытаюсь играть с питоном 3.5 с помощью UdP коммуникации, но я не могу показаться, чтобы когда-нибудь библиотекой сокетов для работы всегда дает этой ошибкебайт (HOST) поднимает «строковый аргумент без кодирования»

Traceback (most recent call last): 
    File "C:\Users\Nicholas Hendricks\Desktop\udpServer.py", line 8, in <module> 
    bytes(HOST) 
TypeError: string argument without an encoding 

и вот мой код:

import socket 
import time 

HOST = 'localhost' 
PORT = 5454 
data = "sup bruh" 

bytes(HOST) 
bytes(PORT) 
s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) 


while 1: 
    s.sendto(data,(HOST,PORT)) 
    print ("sent:" + data) 
+1

'б = байт (HOST,«UTF-8»)' – NonlinearFruit

+0

Вам не нужно, чтобы вставить след обратно в названии, обобщение будет лучше. Содержимое доступно для поиска в Интернете. – Torxed

+0

спасибо, что сработало –

ответ

0

проблема заключается в том, что bytes() предполагает, кодирующий аргумент так:

HOST = bytes(HOST, 'utf-8') 

Но я не понимаю, почему вы конвертируете порт в байты, я нахожусь на телефоне, поэтому не могу проверить, но разве он не должен быть целым?

И вы, вероятно, хотите, чтобы преобразовать данные, а также:

data = bytes(data, 'utf-8') 
Смежные вопросы