在Python中定义变量的范围时,例如
for i in range(0,9):
但在此我想阻止i
取值7
。我怎么能这样做?
答案 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]