python-split新理解

也是遇到一個變形的題目,查資料,發現然來還可以這樣用

題目描述
對字符串中的所有單詞進行倒排。
說明:
1、每個單詞是以26個大寫或小寫英文字母構成;
2、非構成單詞的字符均視爲單詞間隔符;
3、要求倒排後的單詞間隔符以一個空格表示;如果原字符串中相鄰單詞間有多個間隔符時,倒排轉換後也只允許出現一個空格間隔符;
4、每個單詞最長20個字母;

輸入描述:
輸入一行以空格來分隔的句子


輸出描述:
輸出句子的逆序

輸入例子:
I am a student

輸出例子:
student a am I
  • 解法

要是單純只是空格

print ' '.join(raw_input().split()[::-1]).strip()

但是現在還要一那些非字母的作爲分隔符,怎麼辦?
首先,我告訴你:

pstr.split(str='[^A-Za-z]')

這個寫法是錯的。

看《Python核心編程》裏講,用re.split

  • 答案之一
# -*- coding:utf-8 -*-
# 【中級】單詞倒排

import re

print (' '.join(re.split(' |[^A-Za-z]', raw_input())[::-1])).strip()
發佈了91 篇原創文章 · 獲贊 12 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章