您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關python數據清洗容易遇到的函數re.sub bytes string的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
re.sub
功能,比replace強大的替換函數,將正則表達式匹配上的模塊替換成repl
re.sub(pattern, repl, string, count=0, flags=0)
返回最左邊正則表達式限定的被repl代替的字符串,如果正則表達式沒有匹配上,則字符串不做修改。
\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. 如果后面跟的是數字 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是一個函數,則會對每個不重疊的模式發生調用。 該函數采用單個匹配對象參數,并返回替換字符串。 例如:
>>> >>> 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'
模板可以是一個字符串或者RE對象
count是最大替換個數,非負整數,如果省略或者取0則全文檔都被匹配替換;
class bytes([source[, encoding[, errors]]])
返回一個新的數組對象,這個數組對象不能對數組元素進行修改。每個元素值范圍: 0 <= x < 256。bytes函數與bytearray函數主要區別是bytes函數產生的對象的元素不能修改,而bytearray函數產生的對象的元素可以修改。因此,除了可修改的對象函數跟bytearray函數不一樣之外,其它使用方法全部是相同的。最后它的參數定義方式也與bytearray函數是一樣的。
實例
a = bytes("abs",'utf-8') print(a) b'abs' b = bytes(1) print(b) b'\x00'
class bytearray([source[, encoding[, errors]]])
返回一個新的字節數組。 bytearray類是0 <= x <256的整數可變序列。它具有可變序列類型中描述的可變序列的大多數常用方法,以及字節類型具有的大多數方法,請參見字節和 Bytearray操作。
可選的源參數可用于以幾種不同的方式初始化數組:
如果是字符串,還必須給出編碼(和可選的錯誤)參數; bytearray()然后使用str.encode()將字符串轉換為字節。
如果它是整數,則數組將具有該大小,并且將以空字節初始化。
如果是符合緩沖區接口的對象,則將使用對象的只讀緩沖區來初始化字節數組。
如果它是一個可迭代的,它必須是0 <= x <256的整數的迭代,它們被用作數組的初始內容。
沒有參數,將創建一個大小為0的數組。
bytes.strip([chars]) & bytearray.strip([chars])
返回刪除指定的前導和尾部字節的序列副本。 chars參數是指定要刪除的字節值集的二進制序列 - 該名稱是指通常使用ASCII字符的方法。 如果省略或無,則chars參數默認為刪除ASCII空格。 chars參數不是前綴或后綴; 相反,其值的所有組合都被剝離:
> b' spacious '.strip() b'spacious' > b'www.example.com'.strip(b'cmowz.') b'example'
string.punctuation
在C語言環境中被視為標點符號的ASCII字符串
感謝各位的閱讀!關于“python數據清洗容易遇到的函數re.sub bytes string的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。