This question could be asked in a language independent way but I'm asking in the context of python since different languages will have different nuances.
I recognize that this is similar to this question but I think mine is different in that I'm asking about a case where putting the two conditions in the same if statement with &
will generate an error.
Let's say I want to see if abc[x]
is equal to 'fish' but let's say I don't know for sure that len(abc)
is >= to x. I can't just have if abc[x]=='fish'
because it might be index out of range. As such I need to do
if len(abc)>x:
if abc[x]=='fish':
dostuff
else:
dootherstuff
else:
dootherstuff
Is there a cleaner way to do this where I don't have two else statements that end up doing the same dootherstuff
? If I want to change what dootherstuff
is later than I have to change it in both places but by then I might forget. Sure I could try to comment the code to remind myself later or make dootherstuff
a function but that still seems second best. A lot of times when I wind up doing this the dootherstuff
is just a one line of code so making it a function doesn't feel much better even though it addresses the subsequent change scenario.