how to return last condition if other 2 not met?
asa32sd23 at gmail.com
asa32sd23 at gmail.com
Wed May 23 19:57:48 EDT 2018
i want to check/return for 3 conditions, it loops shortest str and finds diff in other
1. if difference is immediate before end of range, return index, exit
2. if string length is same and index loop is done, return 'identical'
3. if neither of above is found. it means the short loop ended and every letter was same so next letter of longer str is the diff, just return idex+1
but my last print statement always print. not sure how to end this
[code]
str1= "kitti cat"
str2= 'kitti catt'
lenStr1= len(str1)
lenStr2= len(str2)
#find shortest str and loop range with this one
if lenStr1 >= lenStr2:
str= str2
else:
str= str1
# loop each character of shortest string, compare to same index of longer string
# if any difference, exit and return index of difference
for idx in range(len(str)):
a= str1[idx]
b= str2[idx]
if a != b: #immeditely exit, since non-match found
print(idx)
break
else:
if len(str1) == len(str2) and idx == len(str1)-1: #if no difference print 'identical'
print("identical")
break
print(idx+1)
[/code]
More information about the Python-list
mailing list