自从我开始使用Python 3版本后,我在通过socket发送字符串方面遇到了很多问题。我知道,在socket中发送字符串时,必须在字符串前加上 'b'
,将其转换为字节。但是当我需要将input()
转换为字节时该如何操作呢?
我需要通过键盘输入发送一条信息到socket:
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(("localhost",7500))
msg = input()
client.send(msg)
然而,当我尝试时,我收到了以下错误:
TypeError: a bytes-like object is required, not 'str'
有人能告诉我如何将input()
转换为字节吗?我总是使用2.7版本,不理解为什么3版本对套接字的处理如此烦人。 :(