Python中传递参数给程序

运行环境: Python 3.6 32bit、Windows 10 PowerShell


几乎各个编程语言都有函数/方法参数的传递,总结起来就是在程序内部进行参数的传递。后来想能否直接将参数传递给程序,例如我们经常用于测试网络连通性的ping程序。

ping 192.168.1.1        #检查我的电脑与路由器之间的连通性
ping www.baidu.com      #检查外网连通性

其中IP和域名都是作为参数传递给程序ping


Python中传递参数给程序

我们需要引入sys.argv这个功能来实现,我们先看看sys.argv在调用时返回什么内容。

import sys
print(sys.argv)

运行结果:

我们试着传递两个参数进我们编写好的程序,两个参数分别为a,b

运行结果

我们可以发现返回值是一个列表,并且列表中第一个参数是该py文件名,第二个是参数a,第三个是参数b。故我们可以直接把sys.argv当作一个列表来进行处理。
此时我们编写一个程序,传入参数为数字,求其平方和。

import sys

print('该程序名为:%s' % sys.argv[0])
print('传入参数为:%s' % str(sys.argv[1:]), end = ' ')

sum = 0
for i in sys.argv[1:]:
    sum = sum + int(i) ** 2
print('其平方和为:%d' % sum)

运行结果


你可能感兴趣的:(Python)