Ниже приведены два массива:
import difflib
import scipy
import numpy
a1=numpy.array(['198.129.254.73','134.55.221.58','134.55.219.121','134.55.41.41','198.124.252.101'], dtype='|S15')
b1=numpy.array(['198.124.252.102','134.55.41.41','134.55.219.121','134.55.219.137','134.55.220.45', '198.124.252.130'],dtype='|S15')
difflib.get_close_matches(a1[-1],b1,2)
вывод:
['198.124.252.130', '198.124.252.102']
не должен '198.124.252.102'
быть ближайшим соответствием для '198.124.252.101'
?
Я просмотрел документацию, где указано о некоторых весах плавающего типа, но нет информации об использовании алгоритма.
Мне нужно выяснить, равна ли абсолютная разница между двумя последними октетами 1 (при условии, что первые три октета одинаковы).
Итак, я сначала нахожу ближайшую строку, а затем проверяю эту ближайшую строку на вышеуказанное условие.
Есть ли какая-либо другая функция или способ добиться этого? Также как ведет себя get_close_matches()
?
ipaddr
похоже не имеет такой манипуляции с ips.