如何判断列表中的数字是否大于126?如果它更大,程序需要添加94

时间:2015-04-20 11:48:39

标签: python

我有一个整数列表addOffset,我想比较列表的每个值和一个常量值,如果值大于126,我需要通过从该值中减去94来替换该值

#addOffset is my list

if addOffset[0:-1]>126:
    Acode = addOffset[0:-1] - 94

4 个答案:

答案 0 :(得分:3)

您可以在此处使用列表理解。

尝试,

print [x-94 if x > 126 else x for x in addOffset]

例如

In [1]: addOffset = [12,125,56,456,78,10]
In [2]: print [x-94 if x > 126 else x for x in addOffset]
Out[2]: [12, 31, 56, 362, 78, 10]

答案 1 :(得分:1)

尝试

for i, element in enumerate(addOffset):
    if element > 126:
        addOffset[i] = element + 94

答案 2 :(得分:0)

addOffset = [10, 20, 69, 180, 35]

for i in xrange(len(addOffset)):
    if addOffset[i]>126:
        addOffset[i] -= 94   #Incase you wanna subtract else use `+=` operator


>>> print addOffset
>>> [10, 20, 69, 86, 35]

答案 3 :(得分:0)

如果您使用numpy,则可以写:

Acode = np.copy(addOffset)
Acode[Acode > 126] -= 94