[英]How to create and fill a list of lists in a for loop
我正在嘗試使用 for 循環填充列表。 這是我到目前為止:
newlist = []
for x in range(10):
for y in range(10):
newlist.append(y)
在這一點上,我被難住了。 我希望循環會給我一個包含 10 個列表的列表。
你離它很近了。 但是您需要將內部循環中的新元素追加到一個空列表中,該列表將作為外部列表的元素追加。 否則,您將獲得(從您的代碼中可以看出)一個包含 100 個元素的平面列表。
newlist = []
for x in range(10):
innerlist = []
for y in range(10):
innerlist.append(y)
newlist.append(innerlist)
print(newlist)
有關更簡潔的版本,請參閱 Błotosmętek 下面的評論。
您可以將這一行代碼與list comprehension
以達到相同的結果:
new_list = [[i for i in range(10)] for j in range(10)]
或者,您只需要一個循環並附加range(10)
。
newlist = []
for x in range(10):
newlist.append(list(range(10)))
或者
newlist = [list(range(10)) for _ in range(10)]
或者只是嵌套列表理解
[[x for x in range(10)] for _ in range(10)]
你應該放一個中間列表來獲得另一個級別
newlist = []
for x in range(10):
temp_list = []
for y in range(10):
temp_list.append(y)
newlist.append(temp_list)
newlist = [list(range(10))] * 10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.