Python數(shù)據(jù)處理之字符串處理技巧全解析
還在為處理文本數(shù)據(jù)頭疼? 據(jù)統(tǒng)計(jì),Python開發(fā)者70%的日常編碼都在和字符串打交道!
本文詳解Python字符串操作核心技巧:
- 字符串切片與拼接的隱藏技巧
- 文本查找替換的實(shí)戰(zhàn)方法
- 數(shù)據(jù)清洗格式化全流程
- 附可直接運(yùn)行的完整代碼模板
一、字符串的"七十二變":創(chuàng)建與切片
Python字符串就像靈活的積木,支持多種創(chuàng)建方式:
# 單雙引號(hào)通用 msg = "Hello 數(shù)據(jù)科學(xué)家!" path = r'C:\new_folder' # 原始字符串避免轉(zhuǎn)義 # 切片操作 [start:end:step] text = "Python超實(shí)用" print(text[2:5]) # tho print(text[::-1]) # 用實(shí)超nohtyP
二、文本拼接的3把利器
- 加號(hào)拼接:簡單少量文本
- join()方法:高效連接列表
- f-string:Python 3.6+首選
names = ["張偉", "李娜", "王陽"] # 傳統(tǒng)方式(性能低) full_str = names[0] + "," + names[1] + "," + names[2] # 高效方式 print(",".join(names)) # 張偉,李娜,王陽 # 現(xiàn)代方式(推薦) print(f"獲獎(jiǎng)?wù)撸簕names[0]}、{names[1]}、{names[2]}")
三、切割與重組:split()和join()
這對(duì)黃金搭檔處理結(jié)構(gòu)化文本:
# 拆分CSV數(shù)據(jù) csv_data = "ID,Name,Salary\n101,張三,15000" rows = csv_data.split('\n') for row in rows: cols = row.split(',') print(cols) # 重組URL路徑 folders = ['img','2024','logo.png'] print('/'.join(folders)) # img/2024/logo.png
四、精準(zhǔn)定位:查找替換技巧
- find():返回首次出現(xiàn)位置
- replace():全局替換內(nèi)容
- in關(guān)鍵字:快速存在性檢測(cè)
log = "ERROR: File not found [code:404]" # 定位關(guān)鍵信息 print(log.find("404")) # 28 print("ERROR" in log) # True # 敏感信息脫敏 secure_log = log.replace("404", "XXX") print(secure_log) # ERROR: File not found [code:XXX]
五、格式化輸出:三種高階玩法
告別混亂拼接:
# 1. %格式化(經(jīng)典) print("溫度:%.1f°C" % 23.456) # 溫度:23.5°C # 2. str.format()(靈活) print("坐標(biāo):({x},{y})".format(x=120, y=89)) # 3. f-string(推薦) name = "Alice" print(f"歡迎{name.upper()}!積分:{1000*1.2:.0f}")
六、清洗標(biāo)準(zhǔn)化:大小寫與空白處理
數(shù)據(jù)清洗必備四件套:
raw_text = " Python數(shù)據(jù)分析 \t\n" # 去空格 clean_text = raw_text.strip() print(clean_text) # "Python數(shù)據(jù)分析" # 大小寫轉(zhuǎn)換 print(clean_text.upper()) # PYTHON數(shù)據(jù)分析 print(clean_text.lower()) # python數(shù)據(jù)分析 # 首字母大寫 print("hello world".title()) # Hello World
七、終極武器:完整數(shù)據(jù)處理模板
def clean_text_data(text): """文本清洗標(biāo)準(zhǔn)化流程""" # 1. 去除首尾空白 text = text.strip() # 2. 轉(zhuǎn)換為小寫 text = text.lower() # 3. 替換特殊字符 text = text.replace('$', 'USD').replace('¥', 'CNY') # 4. 分割重組 words = text.split() return ' '.join(words[:5]) # 保留前5個(gè)詞 raw_data = " $19.99 限時(shí)優(yōu)惠 買一送一 " print(clean_text_data(raw_data)) # 輸出:usd19.99 限時(shí)優(yōu)惠 買一送一
到此這篇關(guān)于Python數(shù)據(jù)處理之字符串處理技巧全解析的文章就介紹到這了,更多相關(guān)Python字符串處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Python實(shí)現(xiàn)自動(dòng)工作匯報(bào)的腳本分享
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)一個(gè)自動(dòng)工作匯報(bào)的腳本,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下2022-08-08Python+MongoDB自增鍵值的簡單實(shí)現(xiàn)
下面小編就為大家?guī)硪黄狿ython+MongoDB自增鍵值的簡單實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-11-11Python and、or以及and-or語法總結(jié)
這篇文章主要介紹了Python and、or以及and-or語法總結(jié),本文分別給出實(shí)例講解它們的使用方法,需要的朋友可以參考下2015-04-04Python中時(shí)間元組與時(shí)間日期的使用及說明
這篇文章主要介紹了Python中時(shí)間元組與時(shí)間日期使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08Python2.7環(huán)境Flask框架安裝簡明教程【已測(cè)試】
這篇文章主要介紹了Python2.7環(huán)境Flask框架安裝方法,結(jié)合實(shí)例形式詳細(xì)分析了Python2.7環(huán)境下安裝Flask框架遇到的問題與相關(guān)解決方法、注意事項(xiàng),并給出了一個(gè)基本的測(cè)試示例,需要的朋友可以參考下2018-07-07Python中用post、get方式提交數(shù)據(jù)的方法示例
最近在學(xué)習(xí)使用Python,發(fā)現(xiàn)網(wǎng)上很少提到如何使用post,所以下面這篇文章主要給大家介紹了關(guān)于Python中用post、get方式提交數(shù)據(jù)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-09-09