【问题标题】:How can I use argparse to input different type arguments on the command line?如何使用 argparse 在命令行上输入不同类型的参数?
【发布时间】:2017-06-06 12:04:28
【问题描述】:

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

【问题讨论】:

    标签: python argparse


    【解决方案1】:

    相信您已经看过本教程: 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
    

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

    【讨论】:

      猜你喜欢
      • 2018-11-25
      • 2023-04-03
      • 2016-05-02
      • 2013-09-13
      • 2011-09-12
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      相关资源
      最近更新 更多