Python|为子列表增加价值
有时,我们只需要通过将相似的值附加到所有子列表来操作列表列表。使用循环来完成此特定任务可能是一种选择,但有时会导致牺牲代码的可读性。总是希望有一个单线器来执行这个特定的任务。让我们讨论一些可以做到这一点的方法。
方法#1:使用列表推导
列表推导式可用于使用类似的循环结构但仅在一行中执行此特定任务。这增加了代码的可读性。
# Python3 code to demonstrate
# appending single value
# using list comprehension
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
# printing original list
print("The original list : " + str(test_list))
# declaring element to be inserted
K = "GFG"
# using list comprehension
# appending single value
res = [[i, j, K ] for i, j in test_list]
# printing result
print("The list after adding element : " + str(res))
输出 :
The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element : [[1, 3, ‘GFG’], [3, 4, ‘GFG’], [6, 5, ‘GFG’], [4, 5, ‘GFG’]]
方法 #2 : 使用列表理解 + "+"
运算符
这个方法和上面的方法很相似,不同的是加号运算符用于将新元素添加到每个子列表中。
# Python3 code to demonstrate
# appending single value
# using list comprehension + "+" operator
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
# printing original list
print("The original list : " + str(test_list))
# declaring element to be inserted
K = "GFG"
# using list comprehension + "+" operator
# appending single value
res = [sub + [K] for sub in test_list]
# printing result
print("The list after adding element : " + str(res))
输出 :
The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element : [[1, 3, ‘GFG’], [3, 4, ‘GFG’], [6, 5, ‘GFG’], [4, 5, ‘GFG’]]