消除集合中的负面元素(Python)

时间:2015-02-08 00:46:06

标签: python set

X1 = set([-2,6,36,31,33,11,4])
X = set([--])

为了消除X1中的-2,我需要在X集内写什么?可以这样工作的东西:X = set([x for only x<0])

1 个答案:

答案 0 :(得分:2)

您可以使用集合理解:

X = {v for v in X1 if v >= 0}

这会通过循环X1并包含0或更大的所有值来生成新集:

>>> X1 = set([-2, 6, 36, 31, 33, 11, 4])
>>> {v for v in X1 if v >= 0}
set([33, 36, 6, 11, 4, 31])

请参阅Python tutorial on sets以获取有关集合理解的指针,该指针与list comprehensionsdictionary comprehensions密切相关。