2015-10-05 6 views
0

Мне нужно преобразовать случайную строку в строку, где верхний и нижний регистры переключаются на каждую букву. что-то подобное или что стало чтоИспользуйте верхний и нижний регистры на одном и том же слове

Я пытался что-то:

def mom(c): 
    c1=c.lower() 
    c2=c.upper([::2] 
    print(c2) 
    return c2 
mom("Hello dear") 

Но он сохраняет только верхние случаи.

+0

да, забыл сказать –

ответ

0

Вы можете получить список букв верхнего и нижнего регистра и просто смешать их.

def mom(c): 
    c1=c[1::2].lower() 
    c2=c[::2].upper() 
    return "".join(i for j in zip(c2, c1) for i in j) 
print(mom("Hello dear")) 

Результаты:

print(mom("THAT"))  # prints ThAt 
print(mom("that"))  # prints ThAt 
print(mom("Hello dear")) # prints HeLlO DeAr 
print(mom("HELLO DEAR")) # prints HeLlO DeAr 
print(mom("hello dead")) # prints HeLlO DeAd 

Я получил "".join(i for j in zip(c2, c1) for i in j) часть здесь How do I interleave strings in Python?

Смежные вопросы