问题在Python中将字节转换为字符串

Kai Xie

我有一个文件名**.bxl,我尝试在 Python 中读取这个文件,如下所示:

import chardet
bxl_file = open(bxl_filename,'rb')
bxl_str = bxl_file.readlines()[0]
the_encoding = chardet.detect(bxl_str)['encoding']
bxl_str = bxl_str.decode(the_encoding)
bxl_file.close()

当我打印时bxl_str,它看起来像这样:在此处输入图片说明但是当我直接将其显示为时它不起作用:在此处输入图片说明

我想要的是得到一个字符串作为print(bxl_str)结果。任何人都可以帮助我?赞赏!!文件链接

盖·塔巴克

您遇到的行为是因为当您将变量插入解释器时,它会显示它的repr属性,而 print() 采用str(在这种情况下是相同的)并忽略所有不可打印的字符,例如:\ x00, \x01 并用其他东西替换它们(我猜是空格)。

如果您不关心间距,则可选解决方案:

''.join(x for x in bxl_str if x.isprintable())

或者,如果您确实关心间距:

spaced_str = ''
for char in bxl_str:
    if char.isprintable():
        spaced_str += char
    else:
        spaced_str += ' '

或者以更pythonic的方式(谢谢丹):

''.join(char if char.isprintable() else ' ' for char in bxl_str)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在python中将字符串转换为字节?

在python中将字节对象转换为字符串对象

如何在python 2.7中将字符串转换为字节字符串

在Python中将类似字节的字符串转换为实际字节

在python中将字节数组的字符串转换为字节数组

在Java中将字节转换为字符串

在 Visual Basic 中将字节转换为字符串

在go中将字符串转换为字节

在Go中将字节转换为字符串

如何在 Tensorflow 中将字节转换为字符串

在Lua中将字符串转换为字节并写入文件

如何在python 3中将字节转换为字符串?

在 Python 3 中将字节转换为十六进制字符串的正确方法是什么?

如何在Python 2中将字符串转换为字节

在Python 3中将字符串转换为字节的最佳方法?

在Python 3中将字符串转换为字节的最佳方法?

在Python中将ASCII代码列表转换为字符串(字节数组)

我如何在Python中将字符串转换为字节,例如node js

如何在Python2中将字符串转换为字节?

在Python中将以'*'字符读取的问题转换为新字符串

如何在Python中将具有非ASCII字节的字节数组转换为字符串?

在Java中将字符串转换为json的问题

在Teradata中将字符串转换为日期的问题

在Django中将日期时间转换为字符串的问题

在java中将字符串转换为数组的问题

Python将字符串转换为字节

Python将字节转换为字符串

将字节从for循环转换为python中的字符串

在python中将字符串转换为unicode字符