【发布时间】:2020-10-21 07:19:35
【问题描述】:
Python2 代码:
x = buffer(chr(0) * 32)
python3 的等价物是什么?
我试图用memoryview() 替换缓冲区,但名称错误变成了类型错误:TypeError: memoryview: a bytes-like object is required, not 'str'.
我很确定这应该是一个字符串而不是一个字节。
有人可以帮我吗?
【问题讨论】:
-
@ThierryLathuille 请强调这两个问题的相似之处以及另一个如何回答这个问题.. python3.py,请解释差异以支持您声称该问题没有解决方案的说法。
-
类似
x = memoryview(b'\x00'*32)? -
我在问题中就说过了! “我试图用 memoryview() 替换缓冲区,但名称错误变成了类型错误:TypeError: memoryview: a bytes-like object is required, not 'str'。”链接的“重复”没有回答!我将代码更改为: x = memoryview(b"chr(0) * 32") 这看起来很糟糕,我确信这不是 d 的正确方法,但至少所有错误都消失了。
-
我做了:x = memoryview(b"chr(0) * 32") 但我认为解决方案是@Jean-FrançoisFabre 发布的解决方案
标签: python python-3.x buffer memoryview