如何在python的for循环范围内对数字进行异常处理

时间:2015-05-30 01:33:37

标签: python python-2.7 for-loop

在Python中定义变量的范围时,例如

for i in range(0,9):

但在此我想阻止i取值7。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

取决于您想要做什么。如果您只想创建一个列表,您可以执行以下操作:

ignore=[2,7] #list of indices to be ignored
l = [ind for ind in xrange(9) if ind not in ignore]

产生

[0, 1, 3, 4, 5, 6, 8]

您也可以在for循环中直接使用这些创建的索引,例如像这样:

[ind**2 for ind in xrange(9) if ind not in ignore]

给你

[0, 1, 9, 16, 25, 36, 64]

或您申请功能

def someFunc(value):
    return value**3

[someFunc(ind) for ind in xrange(9) if ind not in ignore]

产生

[0, 1, 27, 64, 125, 216, 512]