python 可变数量参数 ( 多参数返回求 参数个数,最大值,最大值)
一、 自定义一串数字求 参数个数,最大值,最大值()---------方法一:
def max(*a): m=a[0] p=a[0] n=0 for x in a: if x>m: m=x n+=1 for x in a: if x<p: p=x return n,m,p
if __name__ == '__main__':
list=max(3,4,5)
print("参数个数{},最大值{},最小值{}".format(list[0],list[1],list[2]))
这里用到的是返回多个值,当只需要其中一个值时,可以用数组接受返回值,并用下标分开。
二、 input输入一串数字求 参数个数,最大值,最大值()---------方法二:
def max(*a):
m=a[0]
p=a[0]
n=0
for x in a:
if x>m:
m=x
n+=1
for x in a:
if x<p:
p=x
return n,m,p
if __name__ == '__main__':
b=eval(input())
list=max(*b)
print("参数个数{},最大值{},最小值{}".format(list[0],list[1],list[2]))
这里同样是输入一串数字,用b=eval(input()) 默认是用逗号隔开,且转换成数字,然后将这一串数字作为可变数量参数作为函数参数进行运算
b=eval(input())可用下面两行代替
x=input("输入若干个数,用逗号隔开").split(",")
b=[int(i) for i in x]