python每天1道面试题(1)--翻转句子中单词的顺序

"""
题目1:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。
例如输入“I am a student.”,则输出“student. a am I”。

实现思路:
由于本题需要翻转句子,我们先颠倒句子中的所有字符。这时,不但翻转了句子中单词的顺序,而且单词内字符也被翻转了。
我们再颠倒每个单词内的字符。由于单词内的字符被翻转两次,因此顺序仍然和输入时的顺序保持一致。
"""

def reverse_str(str):
    new_str = str[::-1]
    # print(new_str)
    str_li = new_str.split(' ')
    # print(li)
    li = []
    for i in str_li:
        e = i[::-1]
        li.append(e)
    final_str = ' '.join(li)
    print(final_str)

str = "I am a student."

reverse_str(str)
 

本文参考链接: https://blog.csdn.net/GetNextWindow/article/details/24137657 原文基于java实现.

posted on 2019-06-04 22:10  一剑风徽  阅读(1003)  评论(0编辑  收藏  举报

导航