bytes(HOST)引发“没有编码的字符串参数”

时间:2016-05-31 17:31:40

标签: python sockets udp

我正在尝试使用udp通信使用python 3.5,但我似乎无法让套接字库工作它总是给出这个错误

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 个答案:

答案 0 :(得分:0)

问题是bytes()假定编码参数如此:

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

但是我不明白你为什么要将端口转换为字节,我在手机上进行检查,因此无法检查但是它不应该是一个整数?

您可能也希望转换数据:

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