Я должен извлечь базу данных и поместить ее в скрипт в python. Я сделал это для всего имени базы данных. Теперь я должен вычислить разницу букв между именем 1 и именем 2 и между именем 1 и именем 3 .... и между именем 2 с именем 3 .....
Я сделал это на данный момент. Я покажу вам, какая небольшая часть того, что я сделал, который вызывает у меня проблему:
valeur = []
c.execute("""SELECT NAME FROM AUTHORS""")
rows = c.fetchall()
for row in rows:
valeur.append(row)
x=0
liste=[]
for x in range(len(valeur)):
for i in range(x+1,len(valeur)):
ed = nltk.edit_distance(valeur[x],valeur[i])
dico={"titre":valeur[x],"titre_compare":valeur[i], "distance":ed}
dico["titre"],"&&",(dico["titre_compare"]),"&&",(dico["distance"])
print(dico["titre"],"&&",(dico["titre_compare"]),"&&",(dico["distance"]))
И результат здесь
('Khālid Muḥammad ʻAlī al-Ḥājj',) && ('K. Hardono',) && 1
('Khālid Muḥammad ʻAlī al-Ḥājj',) && ('Nūr al-Dīn Ṣammūd',) && 1
('Khālid Muḥammad ʻAlī al-Ḥājj',) && ('Mawlūd Qāsim Nāyit Bulqāsim',) && 1
('Khālid Muḥammad ʻAlī al-Ḥājj',) && ('Ali Ak',) && 1
('Khālid Muḥammad ʻAlī al-Ḥājj',) && ('Nazamī Rāmajī',) && 1
Мои проблемы, почему у меня только 1 на конец сравнения между двумя словами и почему у меня есть "," в конце слов, это должно быть иначе, и я не понимаю, почему я это получил. Я сделал тот же код другой базы данных с небольшим количеством книг, и это сработало.
Большое спасибо, если вы можете мне помочь!