消除python中set函数中的0

时间:2013-03-04 06:19:07

标签: python python-2.7

如何从集合函数中消除0

uniq_events = set((row[self.param]) for row in self.fpt)
o/p
set(['1','2','0','3')

现在我想要像这样的o / p

set(['1','2','3')

2 个答案:

答案 0 :(得分:2)

  

我想仅在uniq_events由集合中的None0组成时才消除。

您可以使用evt -= {'0', None}

In [10]: evt = set(['1','2','0','3',None])

In [11]: evt
Out[11]: set(['1', '0', '3', '2', None])

In [12]: evt -= {'0', None}

In [13]: evt
Out[13]: set(['1', '3', '2'])

或者,您可以在填充集合时删除不需要的元素:

uniq_events = set(row[self.param] for row in self.fpt if row not in [None, '0'])

答案 1 :(得分:0)

你可以就地做到:

uniq_events.discard("0")

或创建一个新集:

new_events = uniq_events - {"0"}