我正在尝试用Python列出前10个平方数,我做错了什么?[关闭]

7rfyedvj  于 7个月前  发布在  Python
关注(0)|答案(1)|浏览(60)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受回答。

这个问题是由错字或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
14天前关门了。
Improve this question
我试图打印一个1-10的正方形列表。我希望将这些值添加到列表中,然后打印出列表。列表的预期值应该是[1,4,9,16.]
这是我对代码的解释,以获得这些结果:

squares = list(range(1, 11))
for x in squares: 
    square = x ** 2
    squares.append(square)  
print(squares)

字符串
当我点击运行,我没有收到一个错误。它只是无法打印/执行。请,我会很感激你的帮助。谢谢。

ryhaxcpt

ryhaxcpt1#

你的代码中的错误是你一直在向你已经迭代过的列表追加一个值。你的程序永远不会退出for loop。像下面这样做:

numbers = list(range(1,11))
squares = []
for x in numbers:
    squares.append(x**2)
print(squares)

字符串

UPDATE我们可以通过使用list list comprehension read more来减少代码行数,从而获得相同的结果。range()函数返回tuple read more,可以使用与list相同的方法进行迭代。尝试以下操作:

squares = [x**2 for x in range(1,11)]
print(squares)

相关问题