gpt4 book ai didi

python - 在 Python 中将反斜杠作为命令行参数处理

转载 作者:太空狗 更新时间:2023-10-29 21:49:52 26 4
gpt4 key购买 nike

我知道在编程中转义反斜杠。但是,我将命令行参数传递给 Python 程序进行解析。空格无关紧要,但是通过命令行,空格很重要。所以我试图将除第一个元素之外的所有 argv[] 参数连接成一个字符串,然后进行解析。然而,在 for 循环中永远不会遇到单个 '\' 的标记。

命令行参数(注意“\”周围的空格):

((1 * 2) + (3 - (4 \ 5)))

程序:

import sys
string = ""
for token in sys.argv[1:len(sys.argv)]:
print(token)
if "\\" in r"%r" % token:
print("Token with \\ found")
string += token
print(string)
print("done")

最佳答案

这不是 Python 问题。 shell 将解释您在命令行中写入的文本并(对于典型的 Unix shell)执行反斜杠替换。所以当 Python 检查命令行时,反斜杠已经被替换掉了。

如果您的 shell 是 Bash 或其他一些与 Bourne 兼容的 Unix shell,解决方法是加倍反斜杠或将其放在单引号中。 Windows CMD 本身就不同且令人困惑。 csh 加倍如此。

关于python - 在 Python 中将反斜杠作为命令行参数处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28155755/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com