3 conditions to check and return - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: 3 conditions to check and return (/thread-10526.html) |
3 conditions to check and return - ilcaa72 - May-24-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 and matches str2, return 'identical', exit 3. Else just return idex+1 which 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 "just return this if other 2 cond. aren't met". hope i am making sense str1= "kitti cat" str2= 'kitti catt' lenStr1= len(str1) lenStr2= len(str2) #find shortest str and use it as loop range 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) #if other 2 conditions are not met, just return idx+1 which is the last possibility RE: 3 conditions to check and return - micseydel - May-24-2018 If you wrap the code in a function, you can use return instead of break ; if I understand you correctly, I think that should satisfy your requirement.
RE: 3 conditions to check and return - ilcaa72 - May-24-2018 are you saying if i make it a func and place return it wont include the last line if a condition is met before? its the last statement or condition it keep printing even if i include the 'break' statement in other condition RE: 3 conditions to check and return - ilcaa72 - May-24-2018 i added an extra else: after the last condition or matching the original For loop. so if the first 2 dont break the loop this last one will... thanks for the reply |