對python數(shù)據(jù)清洗容易遇到的函數(shù)-re.sub bytes string詳解
re.sub
功能,比replace強(qiáng)大的替換函數(shù),將正則表達(dá)式匹配上的模塊替換成repl
re.sub(pattern, repl, string, count=0, flags=0)
返回最左邊正則表達(dá)式限定的被repl代替的字符串,如果正則表達(dá)式?jīng)]有匹配上,則字符串不做修改。
\n is converted to a single newline character,
\r is converted to a carriage return, and so forth. Unknown escapes such as \j are left alone. 如果后面跟的是數(shù)字 such as \6, 則替換第6組字符串,group 6 in the pattern. For example:
>>>
>>> re.sub(r'def\s+([a-zA-Z_][a-zA-Z_0-9]*)\s*\(\s*\):',
... r'static PyObject*\npy_\1(void)\n{',
... 'def myfunc():')
'static PyObject*\npy_myfunc(void)\n{'
如果repl是一個(gè)函數(shù),則會對每個(gè)不重疊的模式發(fā)生調(diào)用。 該函數(shù)采用單個(gè)匹配對象參數(shù),并返回替換字符串。 例如:
>>>
>>> def dashrepl(matchobj):
... if matchobj.group(0) == '-': return ' '
... else: return '-'
>>> re.sub('-{1,2}', dashrepl, 'pro----gram-files')
'pro--gram files'
>>> re.sub(r'\sAND\s', ' & ', 'Baked Beans And Spam', flags=re.IGNORECASE)
'Baked Beans & Spam'
模板可以是一個(gè)字符串或者RE對象
count是最大替換個(gè)數(shù),非負(fù)整數(shù),如果省略或者取0則全文檔都被匹配替換;
class bytes([source[, encoding[, errors]]])
返回一個(gè)新的數(shù)組對象,這個(gè)數(shù)組對象不能對數(shù)組元素進(jìn)行修改。每個(gè)元素值范圍: 0 <= x < 256。bytes函數(shù)與bytearray函數(shù)主要區(qū)別是bytes函數(shù)產(chǎn)生的對象的元素不能修改,而bytearray函數(shù)產(chǎn)生的對象的元素可以修改。因此,除了可修改的對象函數(shù)跟bytearray函數(shù)不一樣之外,其它使用方法全部是相同的。最后它的參數(shù)定義方式也與bytearray函數(shù)是一樣的。
實(shí)例
a = bytes("abs",'utf-8')
print(a)
b'abs'
b = bytes(1)
print(b)
b'\x00'
class bytearray([source[, encoding[, errors]]])
返回一個(gè)新的字節(jié)數(shù)組。 bytearray類是0 <= x <256的整數(shù)可變序列。它具有可變序列類型中描述的可變序列的大多數(shù)常用方法,以及字節(jié)類型具有的大多數(shù)方法,請參見字節(jié)和 Bytearray操作。
可選的源參數(shù)可用于以幾種不同的方式初始化數(shù)組:
如果是字符串,還必須給出編碼(和可選的錯(cuò)誤)參數(shù); bytearray()然后使用str.encode()將字符串轉(zhuǎn)換為字節(jié)。
如果它是整數(shù),則數(shù)組將具有該大小,并且將以空字節(jié)初始化。
如果是符合緩沖區(qū)接口的對象,則將使用對象的只讀緩沖區(qū)來初始化字節(jié)數(shù)組。
如果它是一個(gè)可迭代的,它必須是0 <= x <256的整數(shù)的迭代,它們被用作數(shù)組的初始內(nèi)容。
沒有參數(shù),將創(chuàng)建一個(gè)大小為0的數(shù)組。
bytes.strip([chars]) & bytearray.strip([chars])
返回刪除指定的前導(dǎo)和尾部字節(jié)的序列副本。 chars參數(shù)是指定要?jiǎng)h除的字節(jié)值集的二進(jìn)制序列 - 該名稱是指通常使用ASCII字符的方法。 如果省略或無,則chars參數(shù)默認(rèn)為刪除ASCII空格。 chars參數(shù)不是前綴或后綴; 相反,其值的所有組合都被剝離:
> b' spacious '.strip() b'spacious' > b'www.example.com'.strip(b'cmowz.') b'example'
string.punctuation
在C語言環(huán)境中被視為標(biāo)點(diǎn)符號的ASCII字符串
以上這篇對python數(shù)據(jù)清洗容易遇到的函數(shù)-re.sub bytes string詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 用Python實(shí)現(xiàn)網(wǎng)易云音樂的數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗和可視化分析
- Python數(shù)據(jù)清洗工具之Numpy的基本操作
- python 利用已有Ner模型進(jìn)行數(shù)據(jù)清洗合并代碼
- python實(shí)現(xiàn)數(shù)據(jù)清洗(缺失值與異常值處理)
- python3常用的數(shù)據(jù)清洗方法(小結(jié))
- 8段用于數(shù)據(jù)清洗Python代碼(小結(jié))
- python數(shù)據(jù)清洗系列之字符串處理詳解
- python 數(shù)據(jù)清洗之?dāng)?shù)據(jù)合并、轉(zhuǎn)換、過濾、排序
- Python?八個(gè)數(shù)據(jù)清洗實(shí)例代碼詳解
相關(guān)文章
tensorflow saver 保存和恢復(fù)指定 tensor的實(shí)例講解
今天小編就為大家分享一篇tensorflow saver 保存和恢復(fù)指定 tensor的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
Python中實(shí)現(xiàn)輸入一個(gè)整數(shù)的案例
這篇文章主要介紹了Python中實(shí)現(xiàn)輸入一個(gè)整數(shù)的案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
使用Python實(shí)現(xiàn)Wake On Lan遠(yuǎn)程開機(jī)功能
這篇文章主要介紹了使用Python實(shí)現(xiàn)Wake On Lan遠(yuǎn)程開機(jī)功能,文中給大家補(bǔ)充介紹了python通過wakeonlan喚醒內(nèi)網(wǎng)電腦開機(jī),非常不錯(cuò),感興趣的朋友跟隨小編一起學(xué)習(xí)吧2020-01-01
利用python實(shí)現(xiàn)微信頭像加紅色數(shù)字功能
通過Python實(shí)現(xiàn)將你的 QQ 頭像(或者微博頭像)右上角加上紅色的數(shù)字,類似于微信未讀信息數(shù)量那種提示效果。下面通過本文給大家分享python實(shí)現(xiàn)微信頭像加紅色數(shù)字功能,感興趣的朋友一起看看吧2018-03-03
webdriver.Chrome()沒反應(yīng)解決詳細(xì)圖文教程
這篇文章主要給大家介紹了關(guān)于webdriver.Chrome()沒反應(yīng)的解決辦法,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2024-03-03

