📜  Python|字符串列表中的子字符串删除

📅  最后修改于: 2022-05-13 01:54:22.597000             🧑  作者: Mango

Python|字符串列表中的子字符串删除

在使用字符串时,最常用的应用程序之一是删除字符串的一部分。由于字符串本身是不可变的,因此了解此实用程序本身就非常有用。这里执行删除字符串列表中的子字符串。让我们讨论可以执行此操作的某些方式。

方法 #1:使用列表理解 + replace()
replace 方法可以与列表理解技术相结合来完成这个特定的任务。列表推导执行遍历列表的任务,replace 方法用空字符串替换子字符串部分。

# Python3 code to demonstrate
# Substring removal in String list
# using list comprehension + replace()
  
# initializing list 
test_list = ['4', 'kg', 'butter', 'for', '40', 'bucks']
  
# printing original list 
print("The original list : " + str(test_list ))
  
# using list comprehension + replace()
# Substring removal in String list
res = [sub.replace('4', '') for sub in test_list]
      
# print result
print("The list after substring removal : " + str(res))
输出 :
The original list : ['4', 'kg', 'butter', 'for', '40', 'bucks']
The list after substring removal : ['', 'kg', 'butter', 'for', '0', 'bucks']

方法 #2:使用map() + lambda + replace()
这些功能的组合也可用于执行此特定任务。 map 和 lambda 帮助执行与列表理解相同的任务,并且使用替换方法执行删除功能。但是这种方法在性能方面比上面的方法差。

# Python3 code to demonstrate
# Substring removal in String list
# using list comprehension + map() + lambda
  
# initializing list 
test_list = ['4', 'kg', 'butter', 'for', '40', 'bucks']
  
# printing original list 
print("The original list : " + str(test_list ))
  
# using list comprehension + map() + lambda
# Substring removal in String list
res = list(map(lambda st: str.replace(st, "4", ""), test_list))
      
# print result
print("The list after substring removal : " + str(res))
输出 :
The original list : ['4', 'kg', 'butter', 'for', '40', 'bucks']
The list after substring removal : ['', 'kg', 'butter', 'for', '0', 'bucks']