Python 详解命令行解析 - argparse
(1) sys.argv
适合解析简单的命令行
需要模块:sys
参数个数:len(sys.argv)
文件名: sys.argv[0]
参数1: sys.argv[1]
参数2: sys.argv[2]
......
(2) argparse
说明:
action 选项有 store 和 append, append 存储的是列表
import sys import argparse def arg_parse(): """ python cmd.py --host-port=127.0.0.1:9001 --sql="select * from dual" """ parser = argparse.ArgumentParser(description="your script description") parser.add_argument('--host-port',dest='host_ports' , required=False , action='store', default=None, metavar='[host:port]',help='--host-port can be useed', type=str) parser.add_argument('--sql',dest='sql' , required=True , action='store', default=None, metavar='sql',help='--sql can be useed', type=str) args = parser.parse_args() return args def main(): args = arg_parse() print args.host_ports print args.sql if __name__ == '__main__': main()
调用: python cmd.py --host-port=127.0.0.1:9001 --sql="select * from dual"