gpt4 book ai didi

Python3 破坏有效的 Python2 代码 : How can I send a series of bytes in a buffer in a socket in Python?

转载 作者:太空宇宙 更新时间:2023-11-03 15:37:04 24 4
gpt4 key购买 nike

基本问题,但如果我有套接字 s 并且我想做:

s.sendto(("\u001b" + 47 * "1"), (mysite.com, 80))

如何才能在 Python3 中不将 \u001b 转换为 "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'

关于Python3 破坏有效的 Python2 代码 : How can I send a series of bytes in a buffer in a socket in Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42450659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com