Python参数解释器
是否有正确的方法读取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 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的首选项。