计算列表中大于和小于平均值的案例的平均值和输出数量

时间:2016-09-27 18:41:33

标签: python

任务: 编写一个算法,允许用户输入最高和最低日常温度数天,直到输入最高温度为999.

程序然后计算平均温度并输出温度高于平均值的天数。它还输出温度为负的天数。

我的代码返回时出现语法错误:http://imgur.com/ArMFAk3

2 个答案:

答案 0 :(得分:0)

input返回一个字符串。要使它成为整数,请执行int( input('Enter temperature: '))

答案 1 :(得分:0)

通过阅读您发布的图像中的代码并假设您的算法正确,以下代码可以满足您的需求(Python 2.7):

import numpy as np

temperatures = []
total = 0
maxtemp = 999
while total < maxtemp:
    data = input("What is your temperature: ")
    temperatures.append(data)
    total = total + data

mean = np.mean(temperatures)
above = temperatures > mean
below = temperatures < mean
print mean
print sum(above)
print sum(below)

请注意您的语法有什么问题:

  1. 您尝试在整数
  2. 上调用len()
  3. 您在while循环结束时放置break。这意味着您只能通过循环
  4. 您似乎尝试拨打len.(above)。没有必要使用句点,len()也会返回temperatures的长度,而sum()会返回True值的数量