列表中的无限循环和字符串比较

我是一名新程序员,学习python。我已经写了这个代码,但我需要帮助1.做一个无限循环,这样用户可以在列表中输入许多数字。2.规定无限循环结束,比如键入"完成"一词。下面是代码:

选择 | 换行 | 行号
  1. print "Welcome to average script "
  2.  
  3. def main():
  4.     #declaration of an empty list avg
  5.     avg = []
  6.     loop = 1
  7.     while loop ==1:
  8.         try:
  9.  
  10.             avg.append( int(raw_input("Enter the first number you want average: \n")))   
  11.             avg.append( int(raw_input("Enter the second number you want average: \n")))
  12.             avg.append( int(raw_input("Enter the third number you want average: \n")))
  13.  
  14.             print "The list is: ", avg
  15.             ambo = len(avg)
  16.             print "The number of members in the list is: ", ambo
  17.             s = sum(avg)
  18.             print "The sum of the enterd numbers is: ",s
  19.             a = float (s/ambo)
  20.             print "The average of the enterd members of the list are: ", a
  21.             break
  22.         except ValueError:
  23.             print "\n Please Enter a number (Integer)"
  24.  
  25.         try:
  26.             loop = input("Press 1 to try again: ")
  27.             avg = []
  28.         except NameError:
  29.             loop = 1
  30.  
  31.         continue           
  32. main()
# 回答1

你好谢谢你的发帖。以下是一些可能有帮助的方法

选择 | 换行 | 行号
  1. mylist=[]
  2. while 1:
  3.     a=raw_input("enter number: ")
  4.     if a=="done": break
  5.     try:
  6.         mylist.append(float(a))
  7.     except:
  8.         print "invalid input."
  9. print mylist, sum(mylist)/max([len(mylist),1]) 

我还没有测试过,但希望它有意义。

# 回答2

你好,Glenton,非常感谢,它完美地工作了,正如我所期望的那样。

标签: python

添加新评论