如何在Python cmd中正确识别argv?

时间:2013-03-25 10:26:47

标签: python shell command-line-arguments

这是代码:

import sys
# Gather our code in a main() function

def main():
    for arg in sys.argv:
        print(arg)

# Standard boilerplate to call the main() function to begin
# the program.
if __name__ == '__main__':
    main()

当我在像a.py a&7这样的cmd中运行它时,它只打印a&7无法识别)。 如何将&之类的字符发送到sys.argv[]

2 个答案:

答案 0 :(得分:3)

在Windows上,使用^

来逃避&符号
python a.py a^&7

或引用双引号(单引号不起作用):

python a.py "a&7"

答案 1 :(得分:2)

假设这是一个类Unix系统,你需要引用参数以防止shell解析它并将&视为命令分隔符:

a.py 'a&7'