【发布时间】:2020-10-20 15:47:40
【问题描述】:
我一直在尝试弄清楚如何编写以下代码:
我有一个清单说:
L = [1, 2, 3, 4, 5]
我正在尝试将每个元素以 2 个为一组进行相乘,因此我希望最后有 4 个列表:
[-1, -2, 3, 4, 5]
[1, -2, -3, 4, 5]
[1, 2, -3, -4, 5]
[1, 2, 3, -4, -5]
现在有了这 4 个列表,我打算再次创建一个嵌套列表:
M = [[-1, -2, 3, 4, 5], [1, -2, -3, 4, 5],[1, 2, -3, -4, 5], [1, 2, 3, -4, -5]]
到目前为止,我得到了这个:
L = [1, 2, 3, 4, 5]
L2 = L.copy()
print(L)
for x in range(0,2):
for y in range(x,2+x):
N = []
L2[y] = L2[y] * -1
N.append(L2)
print(N)
它显示为这样
[1, 2, 3, 4, 5]
[[-1, 2, 3, 4, 5]]
[[-1, -2, 3, 4, 5]]
[[-1, 2, 3, 4, 5]]
[[-1, 2, -3, 4, 5]]
我无法生成嵌套列表,因为我不知道如何调用其元素已从我创建的循环中修改的列表。我的循环也有问题。我希望它以全新的方式读取旧列表,而不是从前一个循环中引用更改后的列表。
我对 python 很陌生,但我很喜欢学习这种新语言。很多时候,我被卡住了,很容易弄清楚我需要发生什么。这对我来说有点棘手,所以我正在寻求帮助。谢谢!
【问题讨论】:
-
相信你能在这个问题中找到答案。只需稍加修改即可将线程中的答案插入您的代码Turning a list into nested lists in python
标签: python