Python,嵌套列表理解
Python, nestes list comprehensions
我正在写一些代码,遇到了一个问题。
代码示例:
my_list_1 = [
[1, 2, 3],
[1, 2, 3],
[1, 2, 3]
]
my_list_2 = []
for index, list in enumerate(my_list_1):
my_list_2.append([])
for item in list:
my_list_2[index].append("Hello World")
print(my_list_2)
[['Hello World', 'Hello World', 'Hello World'], ['Hello World', 'Hello World', 'Hello World'], ['Hello World', 'Hello World', 'Hello World']]
我想把这个 for 循环写成一个列表理解,但我从来没有成功过。
你们知道怎么做吗?
您可以嵌套列表理解:
my_list_2 = [['hello world' for i in lst] for lst in my_list_1]
就是下面的内容,因为 my_list_2[index]
只是分配给刚刚创建的列表
my_list_2 = [
["Hello World" for _ in sublist]
for sublist in my_list_1
]
对于经典的循环版本,更简单的是
my_list_2 = []
for sublist in my_list_1:
tmp_list = []
for item in sublist:
tmp_list.append(f"Hello World {item}")
my_list_2.append(tmp_list)
我正在写一些代码,遇到了一个问题。
代码示例:
my_list_1 = [
[1, 2, 3],
[1, 2, 3],
[1, 2, 3]
]
my_list_2 = []
for index, list in enumerate(my_list_1):
my_list_2.append([])
for item in list:
my_list_2[index].append("Hello World")
print(my_list_2)
[['Hello World', 'Hello World', 'Hello World'], ['Hello World', 'Hello World', 'Hello World'], ['Hello World', 'Hello World', 'Hello World']]
我想把这个 for 循环写成一个列表理解,但我从来没有成功过。
你们知道怎么做吗?
您可以嵌套列表理解:
my_list_2 = [['hello world' for i in lst] for lst in my_list_1]
就是下面的内容,因为 my_list_2[index]
只是分配给刚刚创建的列表
my_list_2 = [
["Hello World" for _ in sublist]
for sublist in my_list_1
]
对于经典的循环版本,更简单的是
my_list_2 = []
for sublist in my_list_1:
tmp_list = []
for item in sublist:
tmp_list.append(f"Hello World {item}")
my_list_2.append(tmp_list)