Python|对列表中每个元素的操作
给定一个列表,我们总是会遇到需要对列表中的每个元素应用特定函数的情况。这可以通过应用循环并对每个元素执行操作来轻松完成。但是用速记来解决这个问题总是有益的,并且有助于更多地关注问题的重要方面。让我们讨论一下可以操作列表中每个元素的某些方式。
方法#1:使用列表推导
此方法在后台执行与循环构造相同的任务。这种特定方法提供的优点是这是一个单行并且还提高了代码的可读性。
# Python3 code to demonstrate
# operations on each list element
# using list comprehension
# initializing list
test_list = ["geeks", "for", "geeks", "is", "best"]
# printing original list
print ("The original list is : " + str(test_list))
# operations on each list element
# using list comprehension
# uppercasing each element
res = [i.upper() for i in test_list]
# printing result
print ("The uppercased list is : " + str(res))
输出:
The original list is : ['geeks', 'for', 'geeks', 'is', 'best']
The uppercased list is : ['GEEKS', 'FOR', 'GEEKS', 'IS', 'BEST']
方法 #2:使用map()
使用 map函数,可以轻松地将元素与希望执行的操作相关联。这是执行或解决此类问题的最优雅的方式。
# Python3 code to demonstrate
# operations on each list element
# using map()
# initializing list
test_list = ["Geeks", "foR", "gEEks", "IS", "bEST"]
# printing original list
print ("The original list is : " + str(test_list))
# operations on each list element
# using map()
# lowercasing each element
res = list(map(str.lower, test_list))
# printing result
print ("The lowercased list is : " + str(res))
输出:
The original list is : ['Geeks', 'foR', 'gEEks', 'IS', 'bEST']
The uppercased list is : ['geeks', 'for', 'geeks', 'is', 'best']