使用getopt的命令行选项和参数

Ibr*_*far 3 python command-line arguments getopt

我正在尝试在python中编写一段代码,以使用getopt模块获取命令行选项和参数.这是我的代码:

import getopt
import sys

def usage ():
    print('Usage')

def main():
    try:
        opts, args = getopt.getopt(sys.argv[1:], 'xy:')
    except getopt.GetoptError as err:
        print(err)
        usage()
        sys.exit()

    for o,a in opts:
        if o in ("-x", "--xxx"):
            print(a)
        elif o in ("-y", "--yyy"):
            print(a)
        else:
            usage()
            sys.exit()

if __name__ == "__main__":
    main()
Run Code Online (Sandbox Code Playgroud)

问题是我无法阅读选项的论点x,但我可以阅读论证y.我该怎么做才能解决这个问题?

Cha*_*tie 11

尝试 getopt.getopt(sys.argv[1:], 'x:y:')

http://docs.python.org/library/getopt.html

解析命令行选项和参数列表.args是要解析的参数列表,没有对正在运行的程序的引用引用.通常,这意味着sys.argv [1:].options是脚本想要识别的选项字母串,其中的选项需要一个参数后跟冒号(':';即,与Unix getopt()使用的格式相同).