我正在解决一些练习题。
问:制作一个看起来像这样的列表:a = [[1,2],[3,4],[5,6]]
因此,我首先创建了一个包含三个两元素列表的列表,如下所示。
a = []
for i in range(3):
line = []
for j in range(2):
line.append(0)
a.append(line)
print(a)
>>> [[0,0],[0,0],[0,0]]
然后我试图将元素更改为1-6,但是我在这一部分苦苦挣扎。
有人可以帮我吗? 谢谢!
答案 0 :(得分:0)
num = 1
a = []
for i in range(3):
line = []
for j in range(2):
line.append(num)
num = num + 1
a.append(line)
print(a)
>>> [[1,2],[3,4],[5,6]]
答案 1 :(得分:0)
我会为此使用itertools.count
。
from itertools import count
counter = count(1)
a = [[next(counter) for _ in range(2)] for _ in range(3)]
print(a) # -> [[1, 2], [3, 4], [5, 6]]
答案 2 :(得分:0)
为此输入代码:
a = []
for i in range(1,7,2):
line = [i, i+1]
a.append(line)
print(a)
>>> [[1,2], [3,4], [5,6]] # Yay!
第一行,a = []
:只列出一个空列表
第二行,for i in range(1,7,2)
:所做的是经过范围1-7,跳过2。这使您得到1、3,并结束于5。
第三行,line = [i, i+1]
:这只是给您line = [1,2]
,line = [3,4]
和line = [5,6]
。非常基础。
第4行,a.append(line)
:将列表行添加到列表a。
第5行,print(a)
:打印输出。
甚至更好:
a = [[i,i+1] for i in range(1,7,2)] # 1 line of code!
print(a)
>>> [[1,2], [3,4], [5,6]] # Yay!
这称为列表理解。我建议您浏览一些https://www.geeksforgeeks.org/comprehensions-in-python/
这样的网站