Как перевернуть каждое слово в строке, но в том же порядке предложений?

python python-3.x converter reverse

2512 просмотра

1 ответ

786 Репутация автора

Я пытался сделать это

while 1:
    line = input('Line: ')
    print(line[::-1])

но все, что было сделано, это перевернуть целое предложение, мне было интересно, может ли кто-нибудь помочь мне с программой, которая преобразует «привет мир» в «olleh dlrow» вместо «dlrow olleh», и как сделать цикл, который останавливается, когда ввод ничего или просто пробел? Заранее благодарю!

Автор: Samir Источник Размещён: 06.08.2013 11:10

Ответы (1)


5 плюса

772571 Репутация автора

Решение

Вам нужно разделить предложение, перевернуть слова, а затем снова собрать.

Самый простой способ разбить это сделать на пустом месте с помощью str.split(); тогда повторная сборка - это всего лишь случай повторного объединения перевернутых слов с пробелом:

' '.join([word[::-1] for word in line.split()])

Демо-версия:

>>> line = 'hello world'
>>> ' '.join([word[::-1] for word in line.split()])
'olleh dlrow'
Автор: Martijn Pieters Размещён: 06.08.2013 11:12
Вопросы из категории :
32x32