有没有办法传入包含“$”字符的 str 参数?

Is there a way to pass in a str argument containing "$" character?

我的 python 脚本需要一个 str 类型的参数。

我正在使用来自 argparseArgumentParser class。

我想传入一个中间包含“$”字符的字符串,例如"file2_a.txt",但当传递给脚本时,参数存储为 "file" 切断 $102_a.

有什么方法可以让 argparse 适应这种情况吗?

运行 macOS,python v3.7.6

感谢您的帮助。

我们可以在美元符号前加上 escape sequence

说 test.py 定义为

import sys
print(sys.argv[1])

然后,

$ python test.py "dff$sdfs"

将打印 dff$sdfs

编辑:正如用户所指出的:smac89,如果参数用单引号(')而不是双引号(")括起来,它不会在美元符号处拆分。

$ python test.py 'dff$sdfs'

也会打印 dff$sdfs