编辑:我已经改变了我的问题稍微使之更加普遍,从而在P中的I [i] [j]也可以改变。优雅的方式来操纵列表中的列表?
很新的Python的。我有一个列表,这使得4排5列网格内[长度相等]列表:
p = [[1.0, 3.0, 4.0, 1.0, 1.0],
[1.0, 1.0, 5.0, 1.0, 1.0],
[1.0, 6.0, 6.0, 1.0, 1.0],
[1.0, 4.0, 1.0, 1.0, 6.0]]
为了操纵每个单元格,我现在正在做的是这样的:
for i in range(len(p)):
for j in range(len(p[0])):
p[i][j] = p[i][j - 1] * c1 + p[(i + 1) % len(p)][j] * c2
我的问题是:有没有更好的方法来写这个,而不是在另一个for循环中有for循环?也许使用lambda?
你想对细胞做什么?我大概可以从你正在做的事情中弄清楚你的意图,但这并不明显。 – Kimvais 2012-02-24 14:11:09
我想像在代码中一样操纵它们:'p [i] [j] = p [i] [j - 1%len(p [0])] * c1 + p [i] [j] * c2'但我想摆脱在一个for。 – ksindi 2012-02-24 14:12:08
也许用'xrange'替代'range'。 – hochl 2012-02-24 14:12:44