【发布时间】:2017-04-26 05:12:01
【问题描述】:
我正在尝试使用 for 循环来查找列表的平均值。我已经用一个while循环完成了。
是否可以将其转换为 for 循环?
List_1 =[]
while (True):
val_1 = float( input("Enter a number: "))
List_1.append (val_1)
if len(List_1)>=5:
List_sum = sum(List_1)
List_avg = (List_sum / len(List_1))
print("AVG:",List_avg)
break
这是我想出的:
val_1 = int(input("Enter a number: " ))
List_1 = []
List_1.append (val_1)
List_sum = 0
List_len = 0
List_avg = 0
for i in range (List_1):
List_sum = sum(numbers)
List_len = len(numbers)
if len(numbers) >=5:
List_avg = List_sum / List_len
print (List_avg)
【问题讨论】:
-
1) 就像
input(..)在循环中一样,您不认为for-loop 版本也应该在循环中包含一个吗? 2)range(List_1)是错误的。range(..)取整数;一个整数,(有点)表示你想要迭代多少次。, -
改用
sum(list)/len(list),它比循环更有效。
标签: python list python-3.x for-loop while-loop