python脚本传入参数--精讲(getopt模块)
2017-05-16 22:03
519 查看
1.最常用的sys.argv[],这个不多谈
2.形如
dahu@dahu-OptiPlex-3046:~/json_folder$ python sub1.py -abb -oaaa --output=out -caa -abb3 --output=papa file1 -abb3 file2
输出:
============ opts ================== [('-a', 'bb'), ('-o', 'aaa'), ('--output', 'out'), ('-c', 'aa'), ('-a', 'bb3'), ('--output', 'papa')] 6 ============ args ================== ['file1', '-abb3', 'file2'] 3 -a ==> bb -o ==> aaa --output ==> out -c ==> aa -a ==> bb3 --output ==> papa
code:
#coding=utf-8 #!/usr/bin/env python import sys,getopt
# 短格式 后面没有冒号:表示后面不带参数,后面有冒号表示后面需要参数 # 长格式 后面没有等号 =,表示后面不带参数,其他有 =,表示后面需要参数 # 注意一旦出现不带长短格式的标记'-',就进入arg模式了,例如例子中file1后面的-abb3就认为是arg,而不是opt def usage(): print("Usage:%s [-a|-o|-c] [--help|--output] args...." % sys.argv[0]) if "__main__" == __name__: try: opts, args = getopt.getopt(sys.argv[1:], "a:o:c:", ["help", "output="]) print("============ opts ==================") print(opts) print len(opts) print("============ args ==================") print(args) print len(args)
# check all param for opt, arg in opts: if opt in ("-h", "--help"): usage() sys.exit(1) elif opt in ("-t", "--test"): print("for test option") else: print("%s ==> %s" % (opt, arg)) except getopt.GetoptError: print("getopt error!") usage() sys.exit(1)
相关文章推荐
- python脚本程序,传入参数*要用单引号'*'
- 命令行运行Python脚本时传入参数的三种方式
- 命令行运行Python脚本时传入参数的三种方式
- python脚本程序,传入参数*要用单引号'*'
- python通过getopt模块获取执行命令参数
- Python Argparse模块的使用例子,往python脚本传参数
- python通过getopt模块如何获取执行的命令参数详解
- java调用Python脚本文件的同时,并向其中传入参数
- python getopt模块
- python脚本,测试计算机运算能力。参数可以配置,3000-4000可以使普通计算机运算5天。
- BAT脚本:如何从用户传入的参数中去掉引号
- cmd脚本接受传入参数
- 利用python fabric模块写的批量操作远程主机脚本(命令执行,上传、下载文件)
- 当用 Python ctypes 模块调用动态链接库,如何传入一个结构体指针
- perl模块Getopt::Std用法及实例-从命令行读取参数模块
- python脚本传参数
- python 常见面试问题(2)-getopt 模块/Python Date Time方面的类
- 用Eclipse+pydev调试python传入参数配置
- python 如何调用带参数的shell脚本
- 如何拖动文件到python脚本中作为输入参数?