如何用python编一个函数,对输入的任意多个数进行求平均值。任意多个数!
lst = [] #定义一个空列表
str = raw_input("请输入数值,用空格隔开:")
lst1 = str.split(" ")#lst1用来存储输入的字符串,用空格分割
i = 0
while i <= len(lst1)+1:
lst.append(int(lst1.pop()))#将lst1的数据转换为整型并赋值给lst
i += 1
#print(lst)
def sum(list):
"对列表的数值求和"
s = 0
for x in list:
s += x
return s
def average(list):
"对列表数据求平均值"
avg = 0
avg = sum(list)/(len(list)*1.0) #调用sum函数求和
return avg
print("avg = %f"%average(lst))
扩展资料:
for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。
执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体。
执行末尾循环体后将再次进行条件判断,若条件还成立,则继续重复上述循环,当条件不成立时则跳出当下for循环。
n=0
for i in numbers:
n=n+i
n=n/len(numbers)
return n
只要你输入一个列表就行了啊
谢谢,输入列表我也想到过。只是让别人用的时候让他们输入列表有点蠢,能不能更傻瓜化?让他们任意输入数字,然后按键盘上某个键,输出平均值。
list1=[]
while 1:
a=input()
if a=='.':break
list1.append(eval(a))
avg=sum(list1)/len(list1)
return avg
输入‘.’作为结束