将指标功能应用于列表

时间:2012-12-23 02:46:17

标签: python list function indicator

是否有一种简单的方法将指标功能应用于列表?即我有一个包含一些数字的列表,我想返回另一个相同大小的列表,例如,正数列在原始列表中的数字和负数在原始列表中的零。 / p>

3 个答案:

答案 0 :(得分:9)

只需使用列表理解:

>>> orig = [-3, 2, 5, -6, 8, -2]
>>> indic = [1 if x>0 else 0 for x in orig]
>>> indic
[0, 1, 1, 0, 1, 0]

答案 1 :(得分:6)

List comprehensions

bysign = [int(x >= 0) for x in somelist]

Here's a demo.

答案 2 :(得分:1)

为了产生你的例子的结果,我可能已经完成了

cmp_list=map(cmp, your_list)
one_zero_list=[]
for item in cmp_list:
    if item < 0:
        one_zero_list.append(0)
    elif item==0:
        one_zero_list.append(0) #you didnt actually say what to do with 0
    else:
        one_zero_list.append(1)