Python 如何使用for循环填充列表中的子列表
Python How to use for loop to fill sublists in a list
有一些元组的列表,使用 列表理解 可以很容易地将此列表格式化为列表的列表。但是,如何使用 for 循环来做同样的事情呢?
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
[[x for x in a_tuple] for a_tuple in some_tuples]
输出将是:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
我尝试使用 for 循环
a_tuple = []
for i in some_tuples:
for x in i:
a_tuple.append([x])
a_tuple
输出将是:
[[1], [2], [3], [4], [5], [6], [7], [8], [9]]
如何在不使用 列表理解 的情况下获得 [[1,2,3], [4,5,6], [7,8,9]]
?
使用list()
将元组转换为列表:
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
a_tuple = []
for i in some_tuples:
a_tuple.append(list(i))
print(a_tuple)
结果:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
不使用列表理解的最简单方法是将内部元组映射到列表:
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
some_lists = map(list, some_tuples) # list(map(list, some_tuples)) on Python 3.x
print(some_lists) # [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
您对清单的理解:
print([[x for x in a_tuple] for a_tuple in some_tuples])
等同于:
final_result=[]
for a_tuple in some_tuples:
sub_result=[]
for x in a_tuple:
sub_result.append(x)
final_result.append(sub_result)
print(final_result)
输出:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
有一些元组的列表,使用 列表理解 可以很容易地将此列表格式化为列表的列表。但是,如何使用 for 循环来做同样的事情呢?
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
[[x for x in a_tuple] for a_tuple in some_tuples]
输出将是:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
我尝试使用 for 循环
a_tuple = []
for i in some_tuples:
for x in i:
a_tuple.append([x])
a_tuple
输出将是:
[[1], [2], [3], [4], [5], [6], [7], [8], [9]]
如何在不使用 列表理解 的情况下获得 [[1,2,3], [4,5,6], [7,8,9]]
?
使用list()
将元组转换为列表:
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
a_tuple = []
for i in some_tuples:
a_tuple.append(list(i))
print(a_tuple)
结果:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
不使用列表理解的最简单方法是将内部元组映射到列表:
some_tuples = [(1, 2, 3), (4, 5, 6), (7, 8, 9)]
some_lists = map(list, some_tuples) # list(map(list, some_tuples)) on Python 3.x
print(some_lists) # [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
您对清单的理解:
print([[x for x in a_tuple] for a_tuple in some_tuples])
等同于:
final_result=[]
for a_tuple in some_tuples:
sub_result=[]
for x in a_tuple:
sub_result.append(x)
final_result.append(sub_result)
print(final_result)
输出:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]