首页 > 解决方案 > 有没有办法每次使用 for 循环调用列表中的项目?

问题描述

我想打印一个句子,让列表中的每个项目生成一个新句子。如果可能的话,我也希望能够在使用列表理解时做到这一点。

我尝试浏览我所有的资源,但没有运气。

>>>squared = [17, 100, 25]
>>>my_iterator = iter(squared)

>>>for multiplied in iter(squared):
...    x = next(my_iterator) ** 2
...    print("The square of {0} in list 'squared' is {}".format(???, x)

我应该放什么???(在上面的打印行中)。我想说:“列表 'squared' 中 17 的平方是 298” “列表 'squared' 中 100 的平方是 10000 等等......列表理解可以做同样的事情吗?

>>>new_squared = [i **2 for i in squared]
print(???)

我试过放 .format(my_iterator, x) 但唯一弹出的是内存分配或其他东西......并且 .format(next(my_iterator), x) 不起作用。

标签: pythonlistfor-looplist-comprehension

解决方案


我不确定你在问什么。你只是在找这个吗?

squared = [17, 100, 25]

for x in squared:
    print("The square of {} in list 'squared' is {}".format(x, x ** 2))

输出:

The square of 17 in list 'squared' is 289
The square of 100 in list 'squared' is 10000
The square of 25 in list 'squared' is 625

推荐阅读