盤點一個字符串處理問題(英文文本大小寫處理)
回復“資源”即可獲贈Python學習資料
大家好,我是皮皮。
一、前言
前幾天在Python最強王者群有個叫【老松鼠】的粉絲問了一道關于字符串處理問題,如下圖所示。
原文本如下所示:
輸入一個字符串,比如?"hello.?my?name?is?Joe.?what?is?your?name?"
要求返回一個字符串副本,比如?"Hello.?My?name?is?Joe.?What?is?your?name?"
二、實現(xiàn)過程
這里【冷喵】給了一個思路:按標點符號 劃分句子 每個句子首字母轉大寫。這里【dcpeng】給了一份代碼,如下圖所示:
#?coding:utf-8
#?@Time?:?2022/5/4?10:46
#?@Author:?皮皮
#?@公眾號:?Python共享之家
#?@website?:?http://pdcfighting.com/
#?@File?:?字符串.py
#?@Software:?PyCharm
text?=?"hello.my?name?is?Joe.what?is?your?name?"
print(".".join([i[:1].upper()?+?i[1:]?for?i?in?text.split(".")]))
這個代碼親測好使,運行之后結果如下。

【瑜亮老師】后來也給了一份代碼,如下所示:
s?=?'i?love?Python.i?love?Python!i?love?Python,and?do?you?love?C++?'
st?=?s.replace('.',?'.\n').replace('!',?'!\n').replace('?',?'?\n')
result?=?''.join(k[0].upper()+k[1:]?for?k?in?st.split('\n')[:-1])
print(result)
思路是一樣的,而且這里還考慮到一般英語中的語句結束是句號,感嘆號,問號這三種,健壯性更強了一些。

三、總結
大家好,我是皮皮。這篇文章主要盤點一個字符串處理問題(英文文本大小寫處理),文中給出了兩個方法,如果有其他方法,也歡迎大家積極嘗試,一起學習,記得分享給我哦。
最后感謝粉絲【老松鼠】提問,感謝【冷喵】、【逸】、【dcpeng】、【瑜亮老師】和【月神】在運行過程中給出的思路和代碼建議,感謝粉絲【馮誠】等人參與學習交流。
小伙伴們,快快用實踐一下吧!如果在學習過程中,有遇到任何問題,歡迎加我好友,我拉你進Python學習交流群共同探討學習。
-------------------?End?-------------------
往期精彩文章推薦:

歡迎大家點贊,留言,轉發(fā),轉載,感謝大家的相伴與支持
想加入Python學習群請在后臺回復【入群】
萬水千山總是情,點個【在看】行不行
評論
圖片
表情
