Есть ли простой способ запустить скрипт, сравнивающий входные данные с несколькими элементами списка? - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь создать систему, которая принимает входные данные, разбивает входные данные на части (например, если бы входные данные были apple, они были бы разбиты на a, ap, app, appl и apple). Затем он будет сравнивать каждую из этих частей с каждым элементом списка, добавляя количество элементов, перекрывающихся с каждым элементом, в список, сортируя этот список по убыванию, а затем переупорядочивая исходный список элементов в соответствии с отсортированным. list, по сути, сортировка списка элементов путем перекрытия с заданным вводом.

У меня все работает до того момента, когда он сравнивает фрагменты со списком, но возвращает только значение для первого элемента в список независимо от ввода, даже если вход совпадает с другими элементами в списке, не знаю почему. Я только начал использовать python пару дней go, и мой единственный предыдущий опыт работы с кодировкой - с нуля, поэтому я не удивлюсь, если просто совершу глупую ошибку, которая мешает ей работать должным образом.

Repl.it: https://repl.it/@JACOBLIEBSON / релевантность-сортировка-тест

ItemsList=["apple","banana","microsoft","castle","control","music"]
print(ItemsList)
SimilarityList=["",]
FinalList=[","] SimilarityList.clear()
FinalList.clear()
InputVar=input("input:")
word=InputVar
def split(word): return list(word)
InputList=(split(word))
CombinationsList=["",]
CombinationsList.clear()
while len(InputList)>0:
    print("".join(InputList))
    CombinationsList.append("".join(InputList))
    InputList.pop()
CombinationsList.reverse()
print(CombinationsList)
CountVar=1
SimilarityVar=0
RepeatX=len(ItemsList)
RepeatX2=len(CombinationsList)
while RepeatX>0:
    CountVar2=1
    SimilarityVar=0
    while RepeatX2>0:
    RepeatX2-=1
    if CombinationsList[CountVar2-1] in ItemsList[CountVar-1]:
        SimilarityVar+=1
        CountVar2+=1
    JoinList=[str(SimilarityVar),"(",str(len(SimilarityList)),")"]
    print(JoinList)
    SimilarityList.append("".join(JoinList))
    CountVar+=1
    RepeatX-=1
    print(CountVar)
    print(CountVar2)
    print(SimilarityVar)
print(SimilarityList)
...