描述

对字符串中的所有单词进行倒排。

说明:

1、构成单词的字符只有26个大写或小写英文字母;

2、非构成单词的字符均视为单词间隔符;

3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;

4、每个单词最长20个字母;

数据范围:字符串长度满足 1 \le n \le 10000 \1n10000 

输入描述:

输入一行,表示用来倒排的句子

输出描述:

输出句子的倒排结果

示例1

输入:
I am a student
复制
输出:
student a am I
复制

示例2

输入:
$bo*y gi!r#l
复制
输出:
l r gi y bo

思路:简单模拟即可
代码如下:
a=list(input())#接收输入,转为单字符列表
b=""#存储结果
for i in a:
    if "a"<=i<="z" or "A"<=i<="Z":#是字母就直接加入b
        b+=i
    else:
        if len(b)==0:#特判一下是不是首字符为非字母字符
            b+=" "
        elif b[-1]!=" ":#非首字母就要求当前末尾不为空格才可以添加
            b+=" "
c=b.split(" ")#按空格将单字符列表划分为单词列表
c=c[::-1]#将单词倒置
b=" ".join(c)#重新用空格隔开
print(b)