I want to remove all vowels from a string that the user gives. Below is my code and what I get as an output. For some reason the for loop is only checking the first characte
That's working as expected. strip
is defined as:
Return a copy of the string with the leading and trailing characters removed. The chars argument is a string specifying the set of characters to be removed.
http://docs.python.org/2/library/stdtypes.html#str.strip
So as it says, it only affects the leading and trailing characters - it stops looking as soon as it finds a character that isn't in the set of characters to strip. Loosely speaking, anyway; I didn't check the actual implementation's algorithm.
I think translate
is the most efficient way to do this. From the docs:
>>> 'read this short text'.translate(None, 'aeiou')
'rd ths shrt txt'
http://docs.python.org/2/library/stdtypes.html#str.translate