无法通过套接字发送全部

时间:2018-07-01 06:10:30

标签: python python-3.x sockets

我的问题是,当我尝试使用sendall(data)发送一些数据时,出现错误

db.connected_users[indexx].sendall(usr+' - '+data)
TypeError: must be str, not bytes

当我.encode()要发送的数据时,甚至会发生这种情况。 db.connected_users是一个字典,其密钥对从'username':conn开始,其中conn是conn,addr = s.accept()

的结果。

这很奇怪,我不知道如何解决。如果需要任何其他详细信息,请在评论中提出。谢谢。

1 个答案:

答案 0 :(得分:1)

要将bytes对象转换为str,您需要解码而不对其进行编码,如下所示:

bytes_data = b"some data"
string_data = bytes_data.decode('utf-8')