我正在尝试弄清楚如何将下面的代码与列表理解一起使用。
link = 'page={}&index={}'
index = 10
links = []
for page in range(2, 4):
links.append(link.format(page, index))
index += 10
我尝试了很多不同的方法,并尽可能多地进行了谷歌搜索(也许我没有在搜索正确的术语?)。我仍然无法弄清楚。以下是我尝试过的一种方法,但出现了 SyntaxError
错误。
link = 'page={}&index={}'
index = 10
links = [link.format(link, index) for page in range(2, 4) index += 10]
这应该是列表理解的输出:
['page=2&index=10', 'page=3&index=20']
如果有人有任何想法,将不胜感激。谢谢!
您可以使用 enumerate
: 增加 index
的内置函数:
>>> [link.format(page, i*10) for i, page in enumerate(range(2, 4), start=1)]
['page=2&index=10', 'page=3&index=20']
这也适用于任何其他可迭代对象,而不仅仅是 range(2, 4)
,例如字符串列表。因此,任何此类可迭代对象都可以使用计数器变量进行扩充,例如您示例中的 index
。
我是一名优秀的程序员,十分优秀!