shell向python传参数
1 直接从命令框中获取参数
想要在shell中调用python脚本时实现
python pyServer.py argu1 argu2 argu3
利用 sys.argv 即可读取到 相应参数:
# coding=utf-8
import sys
if __name__ == '__main__':
for i in range(0,len(sys.argv)):
print(sys.argv[i])
2 利用argparse解析参数
argparse 是 Python 内置的一个用于命令项选项与参数解析的模块,通过在程序中定义好我们需要的参数,argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。当然,Python 也有第三方的库可用于命令行解析,而且功能也更加强大,比如 docopt,Click。
2.1 简单示例
我们先来看一个简单示例。主要有三个步骤:
创建 ArgumentParser() 对象
调用 add_argument() 方法添加参数
使用 parse_args() 解析添加的参数
# -*- coding: utf-8 -*-
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('integer', type=int, help='display an integer')
args = parser.parse_args()
print args.integer
将上面的代码保存为文件 argpar