Python|删除字符串列表中的最后一个字符
有时,我们遇到一个问题,我们需要从每个字符串中删除最后一个字符,这可能是我们错误添加的,我们需要将其扩展到整个列表。这种类型的实用程序在 Web 开发中很常见。有速记来执行这项特定的工作总是一个加号。让我们讨论一些可以实现这一目标的方法。
方法#1:使用列表理解+列表切片
可以通过使用列表切片删除字符的能力来执行此任务,并且列表理解有助于将该逻辑扩展到整个列表。
# Python3 code to demonstrate
# remove last character from list of strings
# using list comprehension + list slicing
# initializing list
test_list = ['Manjeets', 'Akashs', 'Akshats', 'Nikhils']
# printing original list
print("The original list : " + str(test_list))
# using list comprehension + list slicing
# remove last character from list of strings
res = [sub[ : -1] for sub in test_list]
# printing result
print("The list after removing last characters : " + str(res))
输出 :
The original list : ['Manjeets', 'Akashs', 'Akshats', 'Nikhils']
The list after removing last characters : ['Manjeet', 'Akash', 'Akshat', 'Nikhil']
方法 #2:使用map()
+ lambda
map函数可以执行为列表的所有成员执行功能的任务,而 lambda函数执行使用列表推导删除最后一个元素的任务。
# Python3 code to demonstrate
# remove last character from list of strings
# using map() + lambda
# initializing list
test_list = ['Manjeets', 'Akashs', 'Akshats', 'Nikhils']
# printing original list
print("The original list : " + str(test_list))
# using map() + lambda
# remove last character from list of strings
res = list(map(lambda i: i[ : -1], test_list))
# printing result
print("The list after removing last characters : " + str(res))
输出 :
The original list : ['Manjeets', 'Akashs', 'Akshats', 'Nikhils']
The list after removing last characters : ['Manjeet', 'Akash', 'Akshat', 'Nikhil']