我正在使用optparse,最近我遇到了以下问题 - 我想传递目录名称作为参数。像这样:
./script.py --dir c:ab
但是,optparse 消除了"\"符号,因此相关变量保留为值c:ab
注意:此脚本在 Linux 机器上运行,它连接到 Windows 机器并执行一些操作。这就是为什么我在脚本名称中使用./
并且目录是 Windows sytle。
如何使 optparse 保留特殊字符?
这不是 Python
的问题;在将 Python 发送到 Python 之前,是你的 shell 解析命令行中的反斜杠。 optparse
不应该受到责备。
通过加倍斜杠来逃避它们:
./script.py --dir c:\a\b
或在参数周围加上引号:
./script.py --dir "c:ab"