python - 如何在不引发 EOL 错误的情况下将 '\\' 替换为 '\'?
问题描述
我正在从一个包含字节数据的文件中读取,但是当我打开文件并将 readline 数据存储到一个变量中时,它将它存储在一个带有反斜杠转义的字符串中,所以当我尝试解码该数据时,我得到的是确切的字符串数据而不是实际解码。
文件示例:
b'\xe0\xa8\xaa\xe0\xa9\xb0\xe0\xa8\x9c\xe0\xa8\xbe\xe0\xa8\xac\xe0\xa9\x80'
b'\xd9\xbe\xd9\x86\xd8\xac\xd8\xa7\xd8\xa8\xdb\x8c'
b'\xd9\xbe\xda\x9a\xd8\xaa\xd9\x88'
readline
返回:
"b'\\xe0\\xa8\\xaa\\xe0\\xa9\\xb0\\xe0\\xa8\\x9c\\xe0\\xa8\\xbe\\xe0\\xa8\\xac\\xe0\\xa9\\x80'"
我明白为什么会有一个额外的反斜杠,但我不知道如何删除它或在没有它的情况下读取文件。
我试图替换那些双反斜杠,但这会引发 EOL 错误。
解决方案
如果您在文件上使用“rb”模式,那可能就是问题所在。它仍然只是一个文本文件。
当我不使用模式参数时,我得到:
"b'\xe0\xa8\xaa\xe0\xa9\xb0\xe0\xa8\x9c\xe0\xa8\xbe\xe0\xa8\xac\xe0\xa9\x80'
"
推荐阅读
- c# - 在 .NET 中,什么时候调用 getter 和 setter?
- python - 重组 pandas 数据框,将 Column 变成新的 Header,原始 Header 成为具有预先存在的 Column 的多索引的一部分
- angular - 如何与重定向共享令牌验证功能?
- django - 没有将其注册为应用程序的 Django 文件夹
- kubernetes - Cassandra Kubernetes Statefulset NoHostAvailableException
- android - 如何从pdf阅读器的文件中获取pdf
- reactjs - 如何在 Azure 中安装 Semantic-UI
- reactjs - FontAwesome 微调器不会在 React 中旋转
- java - 模拟服务层中的字段注入依赖项,包括推土机映射器
- algorithm - Dijkstra 是否适用于所有负权重