python實(shí)現(xiàn)字符串完美拆分split()的方法
函數(shù):split()
例子
我們想要將以下字符串rule進(jìn)行拆分。字符串表示的是一個(gè)規(guī)則,由“…”得到“…”。我們需要將規(guī)則中的條件屬性與取值分別提取出來(lái),存放在條件屬性列表cf_list與值列表cv_list中,規(guī)則的結(jié)論的屬性與取值也提取出來(lái),分別存放結(jié)果屬性列表rf_list與值列表rc_list。
rule = '{age=Middle-aged,sex=Male,education=Bachelors}=>{native-country=United-States}'
代碼
rule = '{age=Middle-aged,sex=Male,education=Bachelors}=>{native-country=United-States}' c_s, r_s = s.split("=>") c_list = c_s.split("{")[1].split("}")[0].split(",") r = r_s.split("{")[1].split("}")[0] cf_list = [] cv_list = [] for c in c_list: cf, cv = c.split("=") cf_list.append(cf) cv_list.append(cv) rf, rv = r.split("=") print(cf_list, cv_list, rf, rv)
輸出結(jié)果:
([‘a(chǎn)ge', ‘sex', ‘education'], [‘Middle-aged', ‘Male', ‘Bachelors'], ‘native-country', ‘United-States')
部分代碼說(shuō)明:
1、
c_s, r_s = s.split("=>")
‘=>'為分隔符,將字符串rule分成兩部分:{age=Middle-aged,sex=Male,education=Bachelors}與{native-country=United-States}
2、
c_list = c_s.split("{")[1].split("}")[0].split(",")
該行代碼將字符串{age=Middle-aged,sex=Male,education=Bachelors}中的{與}濾掉后,將每個(gè)條件分開并存儲(chǔ)在列表中。具體地,c_s.split("{")以{將字符串{age=Middle-aged,sex=Male,education=Bachelors}拆分成包含兩個(gè)元素的列表['', ‘a(chǎn)ge=Middle-aged,sex=Male,education=Bachelors}'],第一個(gè)元素為空字符串,不包含任何信息,故只取拆分結(jié)果的第二個(gè)元素c_s.split("{")[1]。同理,c_s.split("{")[1].split("}")[0]是在之前拆分的基礎(chǔ)上以}對(duì)字符串拆分,并濾掉空字符串。
以上這篇python實(shí)現(xiàn)字符串完美拆分split()的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于安裝halcon包pycharm提示不全的問(wèn)題
很多小伙伴給小編反映在pycham上面安裝halcon對(duì)應(yīng)的安裝包之后,導(dǎo)入出現(xiàn)問(wèn)題,發(fā)現(xiàn)輸入ha.read 沒(méi)有自動(dòng)提示 ,只有幾個(gè)變量和方法,怎么解決這個(gè)問(wèn)題呢,下面小編給大家?guī)?lái)了安裝halcon包pycharm提示不全的問(wèn)題,一起看看吧2021-06-06python中pow函數(shù)用法及功能說(shuō)明
在本篇文章里小編給大家整理的是一篇關(guān)于python中pow函數(shù)用法及功能說(shuō)明內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2020-12-12python實(shí)現(xiàn)漢諾塔遞歸算法經(jīng)典案例
這篇文章主要大家分享了python實(shí)現(xiàn)漢諾塔遞歸算法經(jīng)典案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05Python 通過(guò)URL打開圖片實(shí)例詳解
這篇文章主要介紹了Python 通過(guò)URL打開圖片實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06Python代碼實(shí)現(xiàn)一個(gè)AI多站點(diǎn)搜索神器
在人工智能快速發(fā)展的今天,我們經(jīng)常需要在多個(gè)AI平臺(tái)上嘗試同一個(gè)提示詞,每次復(fù)制粘貼真的很麻煩,所以本文就來(lái)使用Python打造一個(gè)AI多站點(diǎn)搜索神器吧2025-03-03簡(jiǎn)化Python的Django框架代碼的一些示例
這篇文章主要介紹了簡(jiǎn)化Python的Django框架代碼的一些示例,實(shí)際上文中只是抽取了一些Django中最基本的功能用于簡(jiǎn)化入門者的上手復(fù)雜度,下,需要的朋友可以參考下2015-04-04Python+tkinter制作經(jīng)典登錄界面和點(diǎn)擊事件
Tkinter是?Python?標(biāo)準(zhǔn)?GUI?庫(kù),簡(jiǎn)稱?“Tk”;從本質(zhì)上來(lái)說(shuō),它是對(duì)?TCL/TK?工具包的一種?Python?接口封裝。本文將利用tkinter制作一個(gè)經(jīng)典的登錄界面和點(diǎn)擊事件,需要的可以參考一下2022-09-09transform python環(huán)境快速配置方法
經(jīng)常在數(shù)據(jù)開發(fā)中需要搞udf,最近發(fā)現(xiàn)transform更加方便易用,但是經(jīng)常會(huì)涉及到集群python版本不一、包不全或者部分機(jī)器上沒(méi)有安裝python。這篇文章主要介紹了transform python環(huán)境快速配置方法,需要的朋友可以參考下2018-09-09pandas數(shù)據(jù)聚合與分組運(yùn)算的實(shí)現(xiàn)
本文主要介紹了pandas數(shù)據(jù)聚合與分組運(yùn)算的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01