1 问题引入
最近在做xml解析、可视化时遇到一个问题:将字符串(文件路径)中的转义字符不进行转义123\tabc
,正常print会将\t
看作转义字符tab,需求是使字符串按原样输出。下面是不同场景下的解决方法:
2 字符串常量
如果是字符串常量,则在字符串前加r
即可:
1 | print("123\tabc") |
3 字符串变量
如果字符串是变量,使用 repr()
方法:
1 | str1 = "123\tabc" |
注意:字符串使用 repr
函数后输出是会在字符串前后自动加上单引号(见print第二行),print第三行是去掉了字符串首尾的单引号。关于strip
函数,详见博客。
4 文件读取
1 | file1 = open("test.txt", "r") # 123\tabc |
文本文件读取测试发现字符串未发生转义。
拓展阅读:关于python中open函数读取和写入windows记事本的换行问题研究