Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.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_Input_Arguments - Fatal编程技术网

Python参数解释器

Python参数解释器,python,input,arguments,Python,Input,Arguments,是否有正确的方法读取python应用程序的参数 例如: python game.py -server 127.0.0.1 -nick TheKiller1337 有没有正确的方法来解释这些论点? 现在我有一个while循环和一些ifs。但它正在变得相当大。我应该为参数读取创建一个通用类,还是这已经在python中实现了?使用,或者 这三个都在标准库中 我推荐argparse。它是三款中最新的一款,也是IMO中最容易使用的一款。它是在2.7版中引入的 如果使用较旧的Python版本,我建议使用o

是否有正确的方法读取python应用程序的参数

例如:

python game.py -server 127.0.0.1 -nick TheKiller1337
有没有正确的方法来解释这些论点? 现在我有一个while循环和一些ifs。但它正在变得相当大。我应该为参数读取创建一个通用类,还是这已经在python中实现了?

使用,或者

这三个都在标准库中

我推荐argparse。它是三款中最新的一款,也是IMO中最容易使用的一款。它是在2.7版中引入的


如果使用较旧的Python版本,我建议使用optparse(或来自pypi)

如果您使用的是v2.7或更高版本,则可以使用。文档中有示例

对于早期的蟒蛇来说,这通常是一种方式

另一种选择是,如果你想写“C”

对于每一个问题,你都必须将你的论点列表改为更为传统的。以下任一项:

  • python game.py——服务器127.0.0.1——尼克杀手1337
  • python game.py-s 127.0.0.1-n杀手1337
您只需对初始计划稍作更改即可使用。就像:

python game.py -s127.0.0.1 -nTheKiller1337 

我更喜欢
optparse
,因为它在2.6中受支持,而且它有一个很好的界面,自动生成帮助文本,并且支持附加参数,而不仅仅是参数

像这样:

from optparse import OptionParser
parser = OptionParser()
parser.add_option("-e", "--event", dest="type", help="type of EVENT")
(options, args) = parser.parse_args()

if options.type == 'fubar':
  blah.blubb()

你明白了。

如果你能指定不同点,那就太好了,至少要提到optparse和getopt不是argparse的首选项。