Python:读取文件:防止转义特殊字符

标签 python special-characters

我正在读取一个包含以下内容的文件: 这是第一行\n这是第二行\n\n另一行

我正在尝试读取此文件并保持特殊字符 \n 不变。

with open(r'test.txt') as f:
    c = f.read()

但是打印 c 总是显示:

这是第一行\\n这是第二行\\n\\n另一行

我试过在 r'text.txt' 中不使用 r 前缀,但它没有改变任何东西。

是否可以防止转义特殊字符\n

我当然可以做一个 str.replace('\\n','\n'),但我只是想知道我们是否可以不用这个额外的步骤。

最佳答案

我看到两种情况:

  1. 您正在使用 Python 2 在文本模式下的 Windows 上阅读它。Windows 使用 \r\n,因此文本模式下的 Python 2 需要 \r\n。您应该通过添加 Uopen('file.txt', 'rU') 来启用通用换行模式。您还可以使用 io.open 而不是 open。我没有 Python 2,所以我还没有尝试过...

  2. 您的文件中确实有两个字符 \n 而不是换行符,在这种情况下一切都按预期运行。

    <

关于Python:读取文件:防止转义特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46634045/

相关文章:

Python 解析 sys.argv 中的 $

Apache htaccess 西类牙口音

php - MySQL插入特殊字符

python - 面试题: find the direction of first step

python - 在 Python 中工作但在 iPython 中不工作的多处理

python - 如何使用 Python CFFI 正确包装 C 库

php - 如何允许用户名使用特殊字符?

android - SQL 命令中使用的特殊元素的不当中和

python - 如果返回值不是 bool 值则退出 If 语句

python - 在此服务器上找不到所请求的 URL。 Django