python main传参args_python argh/argparse:如何将列表作为命令行参数传递?
我试图使用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:如何将列表作为命令行参数传递?相关推荐
- python main传参args_python argh / argparse:我如何传递一个列表作为命令行参数?
python argh / argparse:我如何传递一个列表作为命令行参数? 我想使用argh库将参数列表传递给python脚本. 可以采取如下input的东西: ./my_script.py m ...
- python main传参args,详解用Python处理Args的3种方法
1. sys 模块 Python 中的 sys 模块具有 argv 功能.当通过终端触发 main.py 的执行时,此功能将返回提供给 main.py 的所有命令行参数的列表.除了其他参数之外,返回列 ...
- java调用python,传参json字符串,含中文传参
java调用python,传参json字符串 python脚本内容(test.py) # -*- coding: utf-8 -*-def main(input):return input java调 ...
- python 元组传参 *args 字典传参 **kwargs 的用法
python 元组传参 *args 字典传参 **kwargs 的用法 # 元组参数 def func_arg(*args):print("args:", args) func_a ...
- assert函数_悉数Python函数传参的语法糖
TIOBE排行榜是程序开发语言的流行使用程度的有效指标,对世界范围内开发语言的走势具有重要参考意义.随着数据挖掘.机器学习和人工智能相关概念的风行,Python一举收获2018年年度语言,这也是Pyt ...
- Python 函数传参详解
Python位置传参 位置传参也称为必备参数,必须按照正确的顺序将参数传递到函数中,定义函数时的参数与实际传入的参数数量必须保持一致 正常如下: def par(A,B):return A+B pri ...
- python命令行输入参数_Python3.x那些事儿:[3]命令行参数传递
用命令行调用python脚本的时候,如果想往脚本中传递参数的时候,参数会被python解释器接受转化为一系列的字符串,放在sys模块中的argv列表中,因此可以使用argv[0]来引用第一个参数,以此 ...
- python中如何定义函数的传入参数是option的_python – 当使用@ click.option将命令行参数传递给函数时,如何返回值?...
我试图使用 click python包将命令行参数传递给函数.官方文档中的示例如解释的那样工作.但是文档中没有提到如何返回值.文档中没有任何函数返回值,因此我不明白如何执行此操作. 以文档为例: im ...
- python使用argparse模块实现在终端命令行传参
直接上代码 import argparse # 定义终端要传送的参数 parser = argparse.ArgumentParser(description="A description ...
最新文章
- tomcat8 热部署
- CoreData的简单使用
- 卷积神经网络四种卷积类型
- Firefox Portable Developer 52.0.0.6176-6178
- 通信行业还是一个靠人际的行业
- Git log高级用法
- [控件] LabelView
- Java Enumeration接口与Iterator接口
- spring学习(34):构造函数依赖注入
- java jdbc 操作_Java:JDBC操作
- 《明日方舟》Python版公开招募工具
- mysql查看当前数据库的连接信息_查看 mysql 数据库当前连接数
- iPhone第二季度在美销量降23%,但iPhone SE有亮点
- poj2280--Amphiphilic Carbon Molecules(扫描线+极角排序+转换坐标)
- fiddler重定向
- 学以致用:让visualstudio爱上sublime
- 安卓beforetextchanged_Android TextWatcher.afterTextChanged与TextWatcher
- 取手机号码php正则表达式,PHP获取手机号码的正则表达式写法
- win7启动黑屏安全模式下卸载驱动图解
- STM32学习记录——MD300二维码扫描模块