如何在命令行中使用argparse输入不同的类型参数?

时间:2017-06-06 03:37:27

标签: python argparse

为了提供更多信息,我有一个我正在处理的程序,它是一个iTunes播放列表解析器,我想要做的是写一个函数,它将取一个播放列表并写入所述歌曲的所有歌曲的文件具有指定评级的播放列表。例如,在命令行上我想写一些类似“python playlist.py --rating 5 fileName”的文件,其中fileName是发生评级搜索的播放列表的名称(这样可选参数会导致程序写入将所有歌曲评为5星评级。有人可以使用argparse解释这样的语法吗?谢谢!

1 个答案:

答案 0 :(得分:0)

我确定您已经看过本教程: https://docs.python.org/2/howto/argparse.html

但即使这有点迟钝。 所以这是一个例子的捷径:

import argparse

def get_command_line_arguments():
    parser = argparse.ArgumentParser(description='Parse --foo and --bar from the command line')
    parser.add_argument('--foo', default=0, type=int, choices=[0, 1, 2], help="gives the foo argument")
    parser.add_argument('--bar', default=1.0, type=float, help="the bar floating scaler")
    parser.add_argument('--zoo', default="", help="zoo is an optional string")
    args = parser.parse_args()
    return args

def main():
    args = get_command_line_arguments()
    foo = args.foo
    bar = args.bar
    zoo = args.zoo

这就是它的全部 - 至少对于一个入门的例子。