Python数组删除项

2024-04-26 00:21:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数组

a=['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '151 ihi Chun', '151 ihi Chun', '149 st Hg', '149 st Hg', '125 Tatane', '125 Tatane', '174 Sunnygat', '174 Sunnygat', '174 Sunnygat', '126 Nank', '126 Nank', '162 Rass', '162 Rass']

我想删除所有''对象,但不能。你知道吗

a.remove('')

while a.index(''): a.remove('')

你帮不上忙。。你知道吗


Tags: 对象index数组hgremovestwhilechun
3条回答

使用带有None^{} call作为过滤器(测试真值,所以非空):

a = filter(None, a)

或列表:

a = [e for e in a if e]

如果需要显式地允许其他“false”值,并且要过滤掉空字符串,请使用:

a = [e for e in a if e != '']

如果这些项实际上是'',换句话说,是空字符串,那么您可以使用以下命令:

a = [x for x in a if x]

因为在真值测试语句中使用空字符串时计算结果为false。你知道吗

试试看

for i in a:
   a.remove('')
   a.remove('')
<>我也不知道为什么第一次不删除所有,但在第二次确定它删除所有空白

相关问题 更多 >