python - 初学者应该如何完成编程任务?

标签 python string for-loop

我对 python 很陌生,正在努力为类(class)创建一个程序。我们应该记录一周内每天的降雪量,并将输入四舍五入到小数点后一位,我在下面做了:

def main():
    print "~*~*~*~*~*~  SNOWFALL LOG ~*~*~*~*~*~"

    snowFall = float (raw_input("Enter Snowfall for Day 1: "))
    print "Snowfall for Day 1: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 2: "))
    print "Snowfall for Day 2: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 3: "))
    print "Snowfall for Day 3: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 4: "))
    print "Snowfall for Day 4: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 5: "))
    print "Snowfall for Day 5: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 6: "))
    print "Snowfall for Day 6: ", ("%.1f" % snowFall)
    snowFall = float (raw_input("Enter Snowfall for Day 7: "))
    print "Snowfall for Day 7: ", ("%.1f" % snowFall)

main()

但是,之后我们应该使用 for 循环计算总降雪量和平均值。我知道命令 str(command) 也以某种方式参与其中,但我不知道如何进行。

我应该如何解决这个问题?

最佳答案

我建议您将这些值放入列表中以存储它们。因此,在打印之前请将其放入:

snowFallTotal = []

现在您可以将值放入此列表中。在每个 raw_input 之后输入:

snowFallTotal.append(snowFall)

它的作用是将snowFall“附加”到列表中。

现在,在获取所有值后,您可以使用 for 循环计算总和,然后除以 7 以获得平均值。

totalSum = 0  # variable to store the sum
for i in snowFallTotal:  # iterate through the value list
    totalSum += i  # augmented addition; adds the value to the variable in place
average = totalSum / 7.0  # floating point division to get accurate average

然后就可以打印结果了。

print 'Average Snowfall for the week:', ('%.1f' % average)

顺便说一句,您不需要 for 循环。您可以用简单的 sum 函数替换它。

totalSum = sum(snowFallTotal)

这会将totalSum 分配给snowFallTotal 中的元素总和,这正是for 循环所做的事情。

关于python - 初学者应该如何完成编程任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14641630/

相关文章:

java - 回文中的for循环

python - 如何在单行上打印 DataFrame

java - 使用 Java 8 将字符串转换为对象列表

python - 如何从 PyYAML 异常中获取详细信息?

r - R 中是否有用于删除嵌入式 NUL 的 sed 类型包?

php - javascript不读取字符

python - 如何编写一个接受正整数 N 并返回前 N 个自然数的列表的函数

c++ - while 比 for 快吗?

python - 自动化无聊的事情 : Why don't these Python functions do the same thing?

python - 如何实现 readinto() 方法