, если у меня есть два список один под названием «база» и используется для разбивки другого списка других «соответствуют» , как показано нижекак сравнить два списка и подсчитать количество одного списка между объектом другого списка в
base = [4,7,13,14,19]
match = [1,2,5,9,10,12,15,18]
Я хочу подсчитать, сколько чисел «соответствия» находится в двух объектах «базы» и хранить в другом списке, называемом «результат» Таким образом, «результат» должен быть [1,3,0,2]
Я использовал этот способ
fianl_num = []
m = 0
countnum = 0
for j in match:
if j < base[m]:
countnum += 1
else:
m = m+1
fianl_num.append(countnum)
countnum = 0
print(fianl_num)`
Однако есть проблема, если объект совпадения больше, чем объект базы, объект текущего совпадения будет считаться другим и перейти к сравнению объекта следующего совпадения с объектом следующей базы. В результате объектом текущей базы является skip
для моего примера/base = [4,7,13,14,19]/match = [1,2,5,9,10,12,15,18 ] мой код приводит к [2,0,2,0] , потому что 5 больше 4, поэтому он переходит на сравнение с 9 по 7, пропустил процесс по сравнению с 5 по 7
Что вы имеете в виду с * в течение двух объектов 'base' *? –
Не понял, как вы получили 1,3,0,2 в первом случае –
Чтобы быть более конкретным, можете ли вы объяснить, как результат равен [1,3,0,2]? Возможно, вы можете записать это шаг за шагом. –