【发布时间】:2016-01-22 16:02:27
【问题描述】:
我实际上是在尝试创建一个函数来将二维列表向左或向右旋转 90°(它必须适用于 n 行和 n 列)。 我找到了一种使用两个循环“for”的方法,但它告诉我,当我尝试调用该函数时,生成器不可下标。 当我一个月前开始使用 Python 时,我对生成器是什么一无所知,我也不明白我在网上找到了什么。顺便说一句,由于语言的原因,我很难研究隐藏在其他帖子中的答案。
这是向右转的代码:
def Rotationversdroite(m,liste):
i = 0
x, y = 0, 0
z = m - 1
listebis = ([0]*(m) for i in range(m))
for x in range(m):
for y in range(m):
listebis[y][z-x] = liste[x][y]
return listebis
【问题讨论】:
-
您的
listebis是一个生成器,当您希望它成为一个列表时。用括号替换括号。
标签: python list generator transpose