Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Comparing the Nth letter to Nth letters of multiple strings in python

I can’t quite figure this one out.

I have multiple five letter long strings and I want to compare each of the letters of the strings to a single string, and then to know if any of the Nth letters of the strings are equal to the Nth letter of the string I’m comparing them to, like this:

string_1 = 'ghost'
string_2 = 'media'
string_3 = 'blind'

the_word = 'shine'

if the_word[0] == string_1[0] or the_word[0] == string_2[0] or the_word[0] == string_3[0] or the_word[1] == string_1[1] or the_word[1] == string_2[1]... and so on...
  print('The Nth letter of some of the strings is equal to the Nth letter of the_word')
else:
  print('None of the letters positions correspond')

If there are multiple strings I want to compare the if statement gets very long so there must be a better way of doing this.

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

I would also like to know what the corresponding letters are (in this case they would be H (string_1[1] == the_word[1]), I (string_3[2] == the_word[2]) and N (string_3[3] == the_word[3])

If there are more than one corresponding letters I would like the return to be list containing all of the letters.

Also I dont need to know if the corresponding letter was the first or whatever the letters position in the word is, only if there are any (and what) corresponding letters.

I find this kind of hard to explain so sorry for possible confusion, will be happy to elaborate.

Thank you!

>Solution :

IIUC, you can get to what you want using zip

base_strings = zip(string_1, string_2, string_3)
for cmp_pair in zip(the_word, base_strings):
    if (cmp_pair[0] in cmp_pair[1]):
        print(cmp_pair[0])

Output

h
i
n
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading