Python范围(再次)

时间:2014-08-16 11:17:05

标签: python-3.x

基本上需要一个程序来计算范围内数字的平方。到目前为止我已经

n = int(input("Enter the smaller number: "))
o = int(input("Enter the larger number: "))
for i in range(n,o + 1):
  print(i**2)

当输入较小的数字3和较大的数字6时,它给出了输出 9 16 25 36 而不是86。

另外,我在另一个程序中遇到麻烦,这个程序意味着在一个范围内乘以负数,例如,如果我输入-6,它将变为-1 * -2 * -3 * -4 * -5 * - 6给出720的输出。我不知道这样做并且无法在任何地方找到。

1 个答案:

答案 0 :(得分:2)

如果你想要总和,你必须将方块添加到变量。

total = 0
for i in range(n, o+1):
    total += i**2
print total

您可以使用sum和列表理解在一行中执行此操作:

print sum([i**2 for i in range(n, o+1)])

我不明白你在乘以负数时遇到的问题。 720是该产品的正确结果。当你将两个负数相乘时,你得到一个正数结果,即小学算术。