我想创建一个函数,它在参数中有一个列表和一个阈值 . 此函数将返回列表中值大于前一个值阈值或更多值的int索引列表 .
到目前为止,我创建了:
def bigger(lst, number):
x = []
for a, prev in zip(lst[1:], number):
diff = a - prev
if diff >= 2:
x.append(a)
print(x)
bigger([0,1,-1,3,7,4,5,3,2,4,8],2)
这将打印出符合以下条件的数字列表,但我想打印索引列表 . 所以它应该打印出[3,4,9,10](索引),但它打印出[3,7,4,8]
3 回答
看看上面的代码,它可以完成你期望它做的事情 . 工作example . 以上,但在列表理解:
你也可以用这个制作一个发电机:
工作example .
使用
zip
和enumerate
,enumerate
将返回索引以及项目:如果您还想支持生成器,那么:
提示,您可以使用
list.index(element, [start,[end]])
来实现此目的@Games Brainiac,这是如何使用list.index()返回元素列表的位置
在我的情况下,结果是:
请下次,请三等投票