我试图使用argh库将参数列表传递给python脚本。可以接受如下输入的东西:./my_script.py my-func --argA blah --argB 1 2 3 4

./my_script.py my-func --argA blah --argB 1

./my_script.py my-func --argA blah --argB

我的内部代码如下:import argh

@argh.arg('--argA', default="bleh", help='My first arg')

@argh.arg('--argB', default=[], help='A list-type arg--except it\'s not!')

def my_func(args):

"A function that does something"

print args.argA

print args.argB

for b in args.argB:

print int(b)*int(b) #Print the square of each number in the list

print sum([int(b) for b in args.argB]) #Print the sum of the list

p = argh.ArghParser()

p.add_commands([my_func])

p.dispatch()

它的行为方式如下:$ python temp.py my-func --argA blooh --argB 1

blooh

['1']

1

1

$ python temp.py my-func --argA blooh --argB 10

blooh

['1', '0']

1

0

1

$ python temp.py my-func --argA blooh --argB 1 2 3

usage: temp.py [-h] {my-func} ...

temp.py: error: unrecognized arguments: 2 3

问题似乎很简单:argh只接受第一个参数,并将其视为字符串。如何使它“期望”一个整数列表?

我看到了how this is done in optparse,但是(不推荐使用)argparse呢?或者使用argh更好的修饰语法?这些看起来更像是Python。

python main传参args_python argh/argparse:如何将列表作为命令行参数传递?相关推荐

  1. python main传参args_python argh / argparse:我如何传递一个列表作为命令行参数?

    python argh / argparse:我如何传递一个列表作为命令行参数? 我想使用argh库将参数列表传递给python脚本. 可以采取如下input的东西: ./my_script.py m ...

  2. python main传参args,详解用Python处理Args的3种方法

    1. sys 模块 Python 中的 sys 模块具有 argv 功能.当通过终端触发 main.py 的执行时,此功能将返回提供给 main.py 的所有命令行参数的列表.除了其他参数之外,返回列 ...

  3. java调用python,传参json字符串,含中文传参

    java调用python,传参json字符串 python脚本内容(test.py) # -*- coding: utf-8 -*-def main(input):return input java调 ...

  4. python 元组传参 *args 字典传参 **kwargs 的用法

    python 元组传参 *args 字典传参 **kwargs 的用法 # 元组参数 def func_arg(*args):print("args:", args) func_a ...

  5. assert函数_悉数Python函数传参的语法糖

    TIOBE排行榜是程序开发语言的流行使用程度的有效指标,对世界范围内开发语言的走势具有重要参考意义.随着数据挖掘.机器学习和人工智能相关概念的风行,Python一举收获2018年年度语言,这也是Pyt ...

  6. Python 函数传参详解

    Python位置传参 位置传参也称为必备参数,必须按照正确的顺序将参数传递到函数中,定义函数时的参数与实际传入的参数数量必须保持一致 正常如下: def par(A,B):return A+B pri ...

  7. python命令行输入参数_Python3.x那些事儿:[3]命令行参数传递

    用命令行调用python脚本的时候,如果想往脚本中传递参数的时候,参数会被python解释器接受转化为一系列的字符串,放在sys模块中的argv列表中,因此可以使用argv[0]来引用第一个参数,以此 ...

  8. python中如何定义函数的传入参数是option的_python – 当使用@ click.option将命令行参数传递给函数时,如何返回值?...

    我试图使用 click python包将命令行参数传递给函数.官方文档中的示例如解释的那样工作.但是文档中没有提到如何返回值.文档中没有任何函数返回值,因此我不明白如何执行此操作. 以文档为例: im ...

  9. python使用argparse模块实现在终端命令行传参

    直接上代码 import argparse # 定义终端要传送的参数 parser = argparse.ArgumentParser(description="A description ...

最新文章

  1. tomcat8 热部署
  2. CoreData的简单使用
  3. 卷积神经网络四种卷积类型
  4. Firefox Portable Developer 52.0.0.6176-6178
  5. 通信行业还是一个靠人际的行业
  6. Git log高级用法
  7. [控件] LabelView
  8. Java Enumeration接口与Iterator接口
  9. spring学习(34):构造函数依赖注入
  10. java jdbc 操作_Java:JDBC操作
  11. 《明日方舟》Python版公开招募工具
  12. mysql查看当前数据库的连接信息_查看 mysql 数据库当前连接数
  13. iPhone第二季度在美销量降23%,但iPhone SE有亮点
  14. poj2280--Amphiphilic Carbon Molecules(扫描线+极角排序+转换坐标)
  15. fiddler重定向
  16. 学以致用:让visualstudio爱上sublime
  17. 安卓beforetextchanged_Android TextWatcher.afterTextChanged与TextWatcher
  18. 取手机号码php正则表达式,PHP获取手机号码的正则表达式写法
  19. win7启动黑屏安全模式下卸载驱动图解
  20. STM32学习记录——MD300二维码扫描模块

热门文章

  1. 软件构造Lab6总结
  2. Redis高性能缓存数据库
  3. 终于又可以用WLW了.
  4. 酒桌饭局上的那些事,男生必学,女生必看,非常有用
  5. 苹果手机键盘html代码大全,iPhone12键盘使用技巧有哪些
  6. C语言复习知识点汇总2--计算机二级(C语言)
  7. 新年春节EDM邮件内容设计案例分享
  8. 计算机启动时蓝屏后自动重起,电脑蓝屏_处理电脑开机蓝屏自动重启
  9. 【中科大软院】还香不香?20软院考研四千字复盘
  10. 专知原创和整理了一些中英文机器学习从入门到精通的资料,和大家分享一下