假设我有一个列表列表(称为 someListofLists),并且我想将每个子列表的第 4 个元素乘以 2。我可以执行以下操作:
new=[]
for k in someListofLists:
this=k
this[3]=this[3]*2
new.append(this)
是否有更优雅的方法来使用列表理解或其他技术来做到这一点?我希望输出仍然是列表的列表。
最佳答案
使用列表理解和枚举
来获取索引,如果索引== 3则乘以2
>>> someListofLists = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]
>>> [[e*2 if i==3 else e for i,e in enumerate(l)] for l in someListofLists]
[[1, 2, 3, 8, 5], [6, 7, 8, 18, 10]]
关于python - 按列表列表中的索引对项目进行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52083104/