Swap case of letters in string input parameter

lowercase, python, uppercase

Solution

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.

Problem

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.

Original source

Related problems