I would like to write a function in Python that takes a string which has lower and upper case letters as a parameter and converts upper case letters to lower case, and lower case letters to upper case.
For example:
>>> func('DDDddddd')
'dddDDDDD'
I want to do it with strings but I couldn't figure out how.
EDIT - Way simpler than my original answer, and supports both ASCII and unicode. Thanks commenters.
a = 'aBcD'
a.swapcase()
>> AbCd
Original answer - disregard
a = 'aBcD'
''.join(map(str.swapcase, a))
>> AbCd
This will map the str.swapcase() function to each element of the string a, swapping the case of each character and returning an list of characters.
''.join() will join each character in the list into a new string.
You should look into string.maketrans to create a translation table that could be used with str.translate. Other constants which will probably be useful are string.ascii_lowercase and string.ascii_uppercase.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With