【问题标题】:python 3.5 converting a list of bytes into asciipython 3.5将字节列表转换为ascii
【发布时间】:2016-06-24 16:55:15
【问题描述】:

我有一个以字节为单位的单词列表,但我想将它们转换为 ascii。

我想得到什么:

print(delimitednames)
['the\x00  ', 'tree\x00  ', 'grew\x00  ', 'tall\x00  ']

我现在得到了什么

print(delimitednames)
[b'the\x00  ', b'tree\x00  ', b'grew\x00  ', b'tall\x00  ']

如果我尝试:

delimitednames = [x.encode('ascii', 'ignore') for x in delimitednames]

我得到错误:

AttributeError: 'bytes object has no attribute 'encode'

我对字节不太熟悉,所以我不知道从哪里开始。任何链接或建议?谢谢。

编辑:更新答案

使用线得到的结果

delimitednames = [str(x,'ascii', 'ignore') for x in delimitednames]

【问题讨论】:

  • 您的预期输出是什么?你能更新你的答案吗

标签: python python-3.x byte ascii


【解决方案1】:

在 Python 3.x 中改用 str 函数:

delimitednames = [str(x,'ascii', 'ignore') for x in delimitednames]

假设您不需要空字节和空格,您可以将 .strip('\x00 ') 添加到字符串中

【讨论】:

    猜你喜欢
    • 2020-08-09
    • 2017-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-03
    • 2011-01-13
    • 1970-01-01
    • 2018-02-15
    相关资源
    最近更新 更多