如何在Python中去除字符串列表中的空字符串?


在本文中,我们将了解如何在Python中从字符串列表中删除空字符串。

第一种方法是使用内置方法filter()。此方法接收字符串列表作为输入,删除空字符串并返回更新后的列表。它将None作为第一个参数,因为我们试图删除空格,第二个参数是字符串列表。

Python内置函数filter()允许你处理可迭代对象并提取满足指定条件的元素。此操作通常称为过滤操作。你可以使用filter()函数将过滤函数应用于可迭代对象,并创建一个仅包含匹配给定条件的元素的新可迭代对象。

示例

在下面的程序中,我们接收一个字符串列表作为输入,使用filter()方法删除空字符串,并打印修改后的无空字符串的列表。

str_list = ["Tutorialspoint","","Welcomes","","Everyone",""]

print("The given list of strings is")
print(str_list)

print("Removing the empty spaces")
updated_list = list(filter(None, str_list))
print(updated_list)

输出

上述示例的输出如下所示:

The given list of strings is
['Tutorialspoint', '', 'Welcomes', '', 'Everyone', '']
Removing the empty spaces
['Tutorialspoint', 'Welcomes', 'Everyone']

使用join()和split()方法

第二种方法是使用join()split()方法。我们将接收字符串列表,使用split()方法以空格为参数将其拆分,然后使用join()方法将它们连接起来。

示例

在下面的示例中,我们接收一个字符串列表作为输入,使用join()方法和split()方法删除空字符串,并打印修改后的无空字符串的列表。

str_list = ["Tutorialspoint","","Welcomes","","Everyone",""]

print("The given list of strings is")
print(str_list)

print("Removing the empty spaces")
updated_list = ' '.join(str_list).split()
print(updated_list)

输出

上述示例的输出如下所示:

The given list of strings is
['Tutorialspoint', '', 'Welcomes', '', 'Everyone', '']
Removing the empty spaces
['Tutorialspoint', 'Welcomes', 'Everyone']

使用remove()方法

第三种方法是暴力方法,即遍历列表,然后检查每个元素是否为空字符串。如果字符串为空,则使用列表的remove()方法将其从列表中删除;否则,我们继续处理下一个字符串。

示例

在下面的示例中,我们接收一个字符串列表作为输入,使用remove()方法和循环删除空字符串,并打印修改后的无空字符串的列表。

str_list = ["Tutorialspoint","","Welcomes","","Everyone",""]
print("The given list of strings is")
print(str_list)

print("Removing the empty spaces")
while ("" in str_list):
   str_list.remove("")
print(str_list)

输出

上述示例的输出如下所示:

The given list of strings is
['Tutorialspoint', '', 'Welcomes', '', 'Everyone', '']
Removing the empty spaces
['Tutorialspoint', 'Welcomes', 'Everyone']

更新于:2022年12月7日

8K+ 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告