我试图打印一个包含双反斜杠(一个转义另一个)的字符串,以便只打印其中一个反斜杠。我认为这会自动发生,但我必须错过一些细节。用单个反斜杠替换字符串文字中的双反斜杠
我有这个小片段:
for path in self.tokenized:
pdb.set_trace()
print(self.tokenized[path])
当我与pdb.set_trace()
调试我可以看到我的琴弦有双反斜线,然后我输入继续打印剩余部分,且它打印同样的事情。
> /home/kendall/Development/path-parser/tokenize_custom.py(82)print_tokens()
-> print(self.tokenized[path])
(Pdb) self.tokenized[path]
['c:', '\\home', '\\kendall', '\\Desktop', '\\home\\kendall\\Desktop']
(Pdb) c
['c:', '\\home', '\\kendall', '\\Desktop', '\\home\\kendall\\Desktop']
请注意,我正在编写一个解析器来分析Windows文件路径 - 因此是反斜杠。
这是什么样子来运行程序:
[email protected]:~/Development/path-parser$ python main.py -f c:\\home\\kendall\\Desktop
使用''打印代替。现在,你的字符串不是'print'' – inspectorG4dget
..而是嵌套在列表中的字符串,你会得到'repr(string)',它有反斜杠转义。 – dhke
@ inspectorG4dget是否有一种干净的方式来添加方括号,就好像它是一个列表 –