python - 2 like characters in same position -


i trying return number of positions in 2 strings have same character.

tried code:

    def matches(stringone, stringtwo):     if stringone or stringtwo == " ":          return none     else:        n=0        count=0        if stringone[n] == stringtwo[n]:            count=count+1        else:            pass        n=n+1        return count 

example:

   matches = matches("abcd", "xbade")    print matches    2 

thanks! :)

and no, it's not homework.

no zip functions please. i'm not trying use python built in functions.

you can use generator expression zip iterate through strings letter-by-letter comparison

def matches(stringone, stringtwo):     return sum(1 i,j in zip(stringone, stringtwo) if == j)  >>> matches("abcd", "xbade") 2 >>> matches('dictionary', 'dibpionabc') 6 

if don't want use python's zip function

def matches(stringone, stringtwo):     shorter = min(len(stringone), len(stringtwo))     same = 0     in range(shorter):         same += stringone[i] == stringtwo[i]     return same 

although method uses min, len, , range. tying hands behind if refuse use built-in functions of language.


Popular posts from this blog