我要在列表中使用每10个数字,并将其与同一列表中第10个数字的后9个数字进行比较,并检查前9个数字是否在+100之内/ -100的第10个数字范围。
所以,如果我有一个包含10,000个数字的列表;
large_list = [4504, 4405, 4302, 4706, 4332, 4656, 3045, 1056, 4556, 4032, 4504, 4405, 4302, 4706, 3342, 3356, 3245, 2356, 4156, 4300, .....]
在这种情况下,每10个数字都是4032和4300,所以我想检查4032中的最后9个数字是否在3932和4132之内,然后检查4300中的最后9个先前数字是否在4200之内和4400,依此类推。
您只需要使用内置的any()
函数来查看后10个是否满足条件。
large_list = [4504, 4405, 4302, 4706, 4332,
4656, 3045, 1056, 4556, 4032,
4504, 4405, 4302, 4706, 3342,
3356, 3245, 2356, 4156, 4300]
within_range = []
step = 10
for i in range(step - 1, len(large_list), step):
within_range.append(any(large_list[i] - 100 <= large_list[i-j] <= large_list[i] + 100 for j in range(1, step)))
如果前面的9个元素中的任何一个在其100个范围之内,则它将遍历列表中的第10个元素,并将True
添加到within_range
列表,否则,将其添加到False
。