Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python枚举删除列表的最后一个元素_Python_Python 3.x - Fatal编程技术网

Python枚举删除列表的最后一个元素

Python枚举删除列表的最后一个元素,python,python-3.x,Python,Python 3.x,我正在撰写这篇文章,试图解析一些命令行参数,但我构建的脚本一直在删除最后一个参数 为了简单起见,我复制了如下问题: import getopt argv = ["-c", "config", "-o", "hello", "-e", "fu bar", "-q", "this is a query"] opts, args = getopt.getopt(argv, "c:o:e:q", ["cfile=", "ofile=", "entry=", "query="]) for opt, a

我正在撰写这篇文章,试图解析一些命令行参数,但我构建的脚本一直在删除最后一个参数

为了简单起见,我复制了如下问题:

import getopt

argv = ["-c", "config", "-o", "hello", "-e", "fu bar", "-q", "this is a query"]
opts, args = getopt.getopt(argv, "c:o:e:q", ["cfile=", "ofile=", "entry=", "query="])

for opt, arg in opts:
    print(opt, arg)
以下是我得到的输出:

-c config
-o hello
-e fu bar
-q
哪里出错了?

冒号(
)不是分隔符,它需要跟在每个参数后面,如下所述:

shortopts是脚本要识别的选项字母字符串,其中的选项要求参数后跟冒号(
:”
;即Unix
getopt()使用的格式)

因此,您应该将
“c:o:e:q”
更改为
“c:o:e:q:


您链接到的教程也以同样的方式使用它。

现在通常建议切换到
argparse
。这与你的问题无关,但这就是为什么这是一条评论。:-)我建议切换到
点击
。是的,它是一个第三方库,这意味着额外的依赖性,但感觉更自然。