代码很简单:
import sys
for arg in sys.argv:
print(arg)
当我使用以下方法运行它时:
myProgram.py \\
它打印:
C:\myProgram.py
\\
由于“\”是特殊的,在底层,python添加了额外的“\”,所以输入的“\\”变成了“\\\\”,当它打印时它又变成了“\\”。我怎样才能阻止这个,或者删除python添加的额外“\”?所以当输入的参数是“\\”时,它会打印“\”;当输入的参数是“\t”时,它会打印一个 [tab];"\n" 打印一个新行;ETC?
我的搜索导致我尝试“原始字符串”,所以我将代码更改为
import sys
for arg in sys.argv:
arg.replace(r'\\',r'\')
print(arg)
但它会抛出错误说
SyntaxError: EOL while scanning string literal
似乎“原始字符串”在这里不起作用?
更新:屏幕截图略有变化