将Python2代码翻译成Python3,can';我似乎没有分裂
我在尝试某些代码时遇到问题: 错误:将Python2代码翻译成Python3,can';我似乎没有分裂,python,python-3.x,string,Python,Python 3.x,String,我在尝试某些代码时遇到问题: 错误: a bytes-like object is required, not 'str' 我发现我使用的是Python3而不是Python2可能有问题。您将字符串编码为bytes对象,然后尝试使用string对象拆分它字节。拆分()只接受字节值: os_name = os_info.Name.encode('utf-8').split(b'|')[0] 您找到的答案实际上是针对Python3的;我已编辑以更正错误。您从哪里获得的os_info信息?@MrJL
a bytes-like object is required, not 'str'
我发现我使用的是Python3而不是Python2可能有问题。您将字符串编码为bytes对象,然后尝试使用string对象拆分它<代码>字节。拆分()只接受字节值:
os_name = os_info.Name.encode('utf-8').split(b'|')[0]
您找到的答案实际上是针对Python3的;我已编辑以更正错误。您从哪里获得的
os_info
信息?@MrJLP:错误在这里非常清楚,可以通过任何字节值和split()
复制。也许可以尝试解释您试图解决的问题,然后解释你相信代码在python 2中解决了这个问题,并在python 3中找到了解决方案。非常感谢,这就是有人让我困惑的窍门,比如os_name=os_info.name.encode(b'utf-8').split('|')[0]
os_name = os_info.Name.encode('utf-8').split(b'|')[0]