2013-05-02 110 views
0

我不确定如何实现应用程序命令行方法。Python命令行应用程序

这将是我的标志: -g(男/女) -p(电话号码) -R(原因) -e(结局) -o(输出名称)

每一个的标志对应于由相同单个字母定义的变量。我在正确的轨道上,还是你能指引我走向正确的方向?

import argparse 

parser = argparse.ArgumentParser(description='Voice Mail App') 

parser.add_argument('-o', action="store", dest="o") 
parser.add_argument('-g', action="store", dest='g') 
parser.add_argument('-p', action="store", dest="p") 
parser.add_argument('-r', action="store", dest="r") 
parser.add_argument('-e', action="store", dest='e') 


print parser.parse_args(['-o', '-g', '-p', '-r', '-e', '5']) 
+1

你怎么知道你有什么不起作用?你有没有试过运行它? – 2013-05-02 01:11:01

+0

我得到:我的Python项目 - voicemail.py [-h] [-o O] [-g G] [-p P] [-r R] [-e E] 我的Python项目 - voicemeail。 py:错误:参数-o:预计一个参数 过程完成退出代码2 – cdegen 2013-05-02 01:26:00

回答

2

确定您是在正确的轨道上。但是,你的论点都需要传递给他们的信息。例如:

print parser.parse_args(['-o','Joe', 
         '-g','male', 
         '-p','867-5309', 
         '-r','because I can', 
         '-e', '5'])