T
Tim Chase
def lowest(s1,s2):
If I understand correctly, something like
for c1,c2 in zip(s1,s2):
is what you're looking for. It will gracefully stop when it
reaches the end of the shortest input. (in your indexed
example above, if s2 is shorter than s1, it will likely
throw an out-of-bounds exception)
For your example, I'd use
def lowest(s1,s2):
return ''.join([lowerChar(c1,c2) for c1,c2 in zip(s1,s2)])
which seems to do what you describe (I understand that
appending to strings is an inefficient operation and is
better done with a join like this)
-tkc
s = ""
for i in xrange(len(s1)):
s += lowerChar(s1,s2)
return s
this seems unpythonic, compared to something like:
def lowest(s1,s2):
s = ""
for c1,c2 in s1,s2:
s += lowerChar(c1,c2)
return s
If I understand correctly, something like
for c1,c2 in zip(s1,s2):
is what you're looking for. It will gracefully stop when it
reaches the end of the shortest input. (in your indexed
example above, if s2 is shorter than s1, it will likely
throw an out-of-bounds exception)
For your example, I'd use
def lowest(s1,s2):
return ''.join([lowerChar(c1,c2) for c1,c2 in zip(s1,s2)])
which seems to do what you describe (I understand that
appending to strings is an inefficient operation and is
better done with a join like this)
-tkc