基本问题,但是如果我有插座s
,我想做:
s.sendto(("u001b" + 47 * "1"), (mysite.com, 80))
如果不将u001b
转换为Python3中的"ESC"
并使我的程序不运行?这在Python2中起作用。
在python 3中,您需要明确编码字符串
您可以做几种方法,但这可能是最简单的:
payload = bytes("u001b" + 47 * "1", 'utf-8')
s.sendto(payload, (mysite.com, 80))
在这种情况下,我们正在使用的论点是:
bytes(string, encoding[, errors]) -> bytes
如果您想使用整数列表,则可以尝试以下内容:
# 27 == ord('x1b')
# 49 == ord('1')
bytes([27] + [49] * 47)
# b'x1b11111111111111111111111111111111111111111111111'