2016-04-20 4 views
-4

Мне нужен алгоритм для подсчета совпадающих букв между двумя строками raw_input. Я не могу использовать алгоритмы сравнения текста, такие как count() или findall(). Я должен составить свой собственный алгоритм. Два текста должны быть сопоставлены буквой. Может ли кто-нибудь помочь мне написать этот код?Подсчет общих букв между двумя строками в python

+5

Начните с лучшей стратегией вы можете думать, и если он не работает, разместить свой код здесь, чтобы другие могли улучшить. – Selcuk

+5

Думаю, вам стоит попробовать написать какой-то код, а затем снова опубликовать с определенными проблемами с кодом –

+0

'sum (a == b для a, b в zip (s1, s2))' должно быть достаточно. – Matthias

ответ

1

Вы можете использовать словари, как показано ниже:

test1 = input("String1: ") 
test2 = input("String2: ") 

common = {} 
if len(test1)<len(test2): 
    for letter in test1: 
      if letter in test2: 
       common[letter]= 1 

else: 
    for letter in test2: 
      if letter in test1: 
       common[letter]= 1 
print (len(common)) 
+0

Можете ли вы рассказать мне, как написать программу, которая задает пользователю двадцать вопросов, чтобы выяснить, о ком он думает? ... Чем больше свободного кода отправлено, тем более бесплатный код ожидается. – zondo

+1

Это не сравнивает строки буквой. Вы используете 'in'. Вам нужно увидеть, не только ли символ в другой строке, но также и тот же индекс? – zondo

+0

Да, мне нужно увидеть, имеет ли символ тот же индекс. Например, если в первом входе пользователь пишет: aaaaa и ищет в следующем aa, то выходы программы 2. – Mell

Смежные вопросы