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