getopt文件python的命令行参数

时间:2017-08-24 03:03:42

标签: python file arguments getopt

我必须在Python中使用getopt从命令行参数中读取文件,如果我保留-file参数,那么我就无法切换可选参数顺序。

示例:

没有文件:

python apple.py -debug -help,反之亦然(有效)

使用文件:

1)python apple.py **-file abc.txt -debug -help**

(它不起作用 - 我的要求)

2)python apple.py **-help -file apple.txt**(作品)

3)python apple.py **-debug -file apple.txt**(作品)

我希望这些选项能够独立运行 - 无论我通过-file的任何顺序,它都应该读取文件。

我的代码实现如下(apple.py):

 opts , args = getopt.getopt ( sys.argv[1:], "file help debug")

        for opt , arg in opts:
            if opt in ("-f"):
                for line, lines in enumerate(fileinput.input(args)):
                    if line == 2:
                        print(lines)

            elif opt in ("-h"):
                print("it is just a help")

            elif opt in ("-d"):
                print ( "Debug is On" )

python apple.py -file abc.txt -debug -help(没有工作)

python apple.py -file abc.txt -debug(没有工作)

我不断收到错误消息:

  

找不到-debug的文件或目录

0 个答案:

没有答案