天天看點

31---單詞倒排

在進入正題之前,我們先看一下以下情況:

輸入:

I am a student      

輸出:

student a am I      

代碼如下:

str1 = "I am a student"
str1_list = str1.split(" ")
str1_list1 = str1_list[::-1]
print(" ".join(str1_list1))

# 上述代碼可做簡化
str1 = "I am a student"
str1_list = str1.split(" ")[::-1]
print(" ".join(str1_list))      

描述

對字元串中的所有單詞進行倒排。

說明:

1、構成單詞的字元隻有26個大寫或小寫英文字母;

2、非構成單詞的字元均視為單詞間隔符;

3、要求倒排後的單詞間隔符以一個空格表示;如果原字元串中相鄰單詞間有多個間隔符時,倒排轉換後也隻允許出現一個空格間隔符;

4、每個單詞最長20個字母;

資料範圍:字元串長度滿足

輸入描述:

輸入一行,表示用來倒排的句子

輸出描述:

輸出句子的倒排結果

示例1

輸入:

I am a student      

輸出:

student a am I      

示例2

輸入:

$bo*y gi!r#l      

輸出:

l r gi y bo      

代碼如下:

str1 = input()
# 替換中間的特殊字元為空格
for i in str1:
    if not i.isalpha():
        str1 = str1.replace(i, " ")

str1_list= str1.split(" ")
for i in range(str1_list.count('')):
    str1_list.remove('')

str1_list = str1_list[::-1]
print(" ".join(str1_list))