作为Python的初学者,我正在尝试创建一个从1到10的循环。我试着使用我在数学课上学到的公式,即“n*(n+1)/2”,但我得到了一个缩进错误。我已经创建了一个“for…in…”循环,并尝试将打印功能放在外部(而不是使用选项卡)。如果有人能告诉我这个错误,我将不胜感激。提前谢谢
my_list = [1,2,3,4,5,6,7,8,9,10]
for a in my_list:
print(a * (a+1) / 2)
错误消息:
print(a * (a+1) / 2)
^
IndentationError: expected an indented block
在Python中,代码缩进非常重要
在您的示例中,只有缩进的内容将在
for
循环下运行因此,你应该:
以避免错误
但这仍然不会产生你所期望的结果,因为这是一个概念上的错误
您不希望在那里有for循环,相反,您需要的是最后一个元素
这可以通过
[-1]
索引实现。看看this article,它应该可以帮助您理解python索引现在,如果您想通过手动迭代列表来再次检查,那么您还必须包括这一点。最终的代码可能如下所示:
或者,我们也可以使用
+=
运算符,它将变量的值增加所需的量,而不必在右侧使用它,这样sum = sum + a
变成sum += a
,最终达到:在中,您没有{}(大括号)。所以,您必须使用tab来完成
相关问题 更多 >
编程相关推荐