python命令行传参
类似与shell脚本,获取命令行传参的时候使用$1,$2,...,$@获取命令行参数
python脚本使用sys.argv获取命令行参数
示例
脚本get-args.py
#输入参数:
#172.1.1.1,172.1.1.2,172.1.1.3 admin liqi
-------------------
#python示例
import sys
print(sys.argv)
-------------------
#输出:
['get-args.py', '172.1.1.1,172.1.1.2,172.1.1.3', 'admin', 'liqi']
sys.argv输出是一个列表,下标0为python脚本名称,后续依次是第一个参数、第二个参数。
传参方式1:命令行执行传参
python get-args.py 172.1.1.1,172.1.1.2,172.1.1.3 admin liqi
传参方式2:Pycharm执行传参
小练习
参数1:脚本命令行传入服务器ip地址,以逗号分隔
参数2:输入角色
参数3:输入服务器拥有者
#代码部分
import sys
if len(sys.argv) > 1:
ipList = sys.argv[1].split(',')
role = sys.argv[2]
name = sys.argv[3]
for ip in ipList:
print('服务器IP:{}, 服务拥有者:{}, 成员角色:{}'.format(ip, name, role))
--------------------------------
#执行传参:
python get-args.py 172.1.1.1,172.1.1.2,172.1.1.3 admin liqi
--------------------------------
#输出:
服务器IP:172.1.1.1, 服务拥有者:liqi, 成员角色:admin
服务器IP:172.1.1.2, 服务拥有者:liqi, 成员角色:admin
服务器IP:172.1.1.3, 服务拥有者:liqi, 成员角色:admin