python庫--pandas--Series.str--字串處理
阿新 • • 發佈:2018-11-13
python內建字串處理方法
S: Series I: Index
方法 | 返回值 | 引數 | 說明 |
.capitalize() | S/I | 將Series/Index中的字串大寫 | |
.cat() | S/I/str | 使用給定分隔符連線字串 | |
other=None | None: 使用sep連線給定的Series返回一個str | ||
List_like: 與Series對應位置的字串用sep連線返回一個S | |||
sep=None | 分隔符 | ||
na_rep=None | 遇到NA值忽略或使用指定字元替換 | ||
.center() | S | 在字串兩端填充指定字元到指定長度 | |
width | 填充後的字串長度 | ||
fillchar=' ' | 用於填充的字串 | ||
.contains() | S[bool] | 判斷指定字串或正則表示式是否在序列或索引中 | |
pat | 字串或正則表示式 | ||
case=True | 是否區分大小寫 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
na=nan | 缺失值填充 | ||
regex=True | 是否使用正則表示式匹配 | ||
.count() | S[int] | 統計指定字串在序列字串中出現的次數 | |
pat | 字串或正則表示式 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
.decode() | S[str] | 解碼 | |
encoding | 解碼方式 | ||
errors='strict' | error處理方式 | ||
.encoode() | S[b''] | 編碼 | |
encoding | 編碼方式 | ||
error='static' | error處理方式 | ||
.endswith() | S[bool] | 判斷是否以給定的字串結尾 | |
pat | 字串 | ||
na=nan | 缺失值填充 | ||
.extract() | 使用正則表示式提取需要的內容(只匹配一次) | ||
pat | 正則表示式(必須含有捕獲組, 超過一個必然返回DataFrame) | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
expand=None | True: 返回DataFrame(未來版本預設值) | ||
False: 返回S/I/DataFrame(現在版本預設值) | |||
.extractall() | df | 獲取所有的正則表示式匹配到的內容(以多級索引的方式展示) | |
pat | 含捕獲組的正則表示式, 若捕獲組設有name則將作為返回的列標籤 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
.find() | S | 查詢sub在序列字串的子字串中出現的位置, 找不到返回-1 | |
sub | 字串 | ||
start=0 | 子字串開始的位置 | ||
end=None | 子字串結束的位置 | ||
.findall() | S[list] | 相當於對序列中每個字串執行 re.findall(pat, string) | |
pat | 正則表示式 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
.get() | S | i | 獲取指定位置的字元, 超出長度則返回Na |
.index() | S | 同.find() 不過找不到將引發Error | |
.join() | S | sep | 給每個字串的字元間插入指定字元 |
.len() | S | 返回每個字串的長度 | |
.ljust() | S | 同 .center() 不過只在右側填充 | |
.lower() | S | 所有字元小寫 | |
.lstrip() | S | to_strip=None | 去除左側指定字元, 預設去掉空白符 |
.match() | S[bool] | 判斷字串與正則表示式是否匹配, 即正則表示式能否匹配到內容 | |
pat | 字串或正則表示式 | ||
case=True | 是否區分大小寫 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數 | ||
na=nan | 缺失值填充 | ||
as_indexer=None | 棄用 | ||
.normalize() | S | from | 返回字串的Unicode標準格式 |
.pad() | S | 在序列字串左側/右側/兩側填充指定字串到指定長度 | |
width | 將字串填充到的長度 | ||
side='left' | 'left': 在左側填充 | ||
'right': 在右側填充 | |||
'both': 在兩側填充, 原字串居中 | |||
fillchar=' ' | 填充的字元 | ||
.partition() | 第一次出現pat時將字串分割為三個部分: pat前面的部分, pat本身, pat後面的部分 | ||
pat=' ' | 字串 | ||
expand=True | True: 返回DataFrame/Multilndex | ||
False: 返回Series/Index, 元素為Tuple | |||
.repeat() | 將字串擴充套件n倍, 比如 'a' 擴充套件 2 倍為 'aa' | ||
repeats | int: 序列中所有字串擴充套件相同倍數 | ||
list_like: 長度需和序列長度一致, 對應每個元素擴充套件對應倍數 | |||
.replace() | S | 更新字串 | |
pat | 字串或編譯的正則表示式 | ||
repl | str: 將匹配到的字串替換為此字串 | ||
fun: 傳給fun的是物件相當於re.search(pat, string)的返回值 | |||
n=-1 | 替換的次數, 預設全部 | ||
case=None | 是否區分大小寫, 如果pat為字串則預設為True, 若為編譯的正則表示式則不能設定 | ||
flags=0 | 可傳入re.IGNORECASE之類的引數, 但若pat為編譯的正則表示式則不能設定 | ||
.rfind() | 同 .find() 不過從右往左檢索 | ||
.rindex() | 同 .index() 不過從右往左檢索 | ||
.rjust() | 同 .center() 不過只在左側填充 | ||
.rpartition() | 同.partition(), 不過從右往左檢索pat字串 | ||
.rstrip() | S | to_strip=None | 去除右側指定字元, 預設去掉空白符 |
.slice() | S | 擷取子字串 | |
start=None | 開始位置 | ||
stop=None | 結束位置 | ||
step=None | 步長 | ||
.slice_replace() | S | 擷取子字串, 並將擷取部分替換為repl | |
start=None | 開始位置 | ||
stop=None | 結束位置 | ||
repl=None | 要替換為的字串 | ||
.split() | 對字串按照給定字元進行分割 | ||
pat=None | 分隔符, 預設空白符 | ||
n=-1 | 分割次數, 預設全部 | ||
expand=False | True: 返回DataFrame/MultiINdex | ||
False: 返回Series/Index | |||
.rsplit() | 同.split() 不過從右側開始分割 | ||
.startswith() | S[bool] | 判斷序列字串是否以指定字串開頭 | |
pat | 字串 | ||
na=nan | 缺失值填充 | ||
.strip() | S | to_strip=None | 去除兩側指定字元, 預設去掉空白符 |
.swapcase() | S | 將小寫字元大寫, 將大寫字元小寫 | |
.title() | S | 將首字母大寫, 其餘字元小寫 | |
.translate() | 參考python內建字串處理方法 .translate() | ||
.upper() | S | 全部大寫 | |
.wrap() | S | width | 在指定位置插入換行符 |
.zfill() | S | width | 在字串前面填充0到指定長度 |
.isalnum() | S[bool] | 字串至少包含一個字元且所有字元都是字母(漢字)或數字則返回True | |
.isalpha() | S[bool] | 字串至少包含一個字元且所有字元都是字母(漢字)則返回True | |
.isdigit() | S[bool] | 只包含數字(可以是: Unicode, 全形字元, bytes(b'1'), 羅馬數字) | |
.isspace() | S[bool] | 只包含空白符 | |
.islower() | S[bool] | 至少包含一個小寫字元, 且不包含大寫字元 | |
.isupper() | S[bool] | 至少包含一個大寫字元, 且不包含小寫字元 | |
.istitle() | S[bool] | 所有單詞大寫開頭其餘小寫(標題化) | |
.isnumeric() | S[bool] | 只包含數字字元 | |
.isdecimal() | S[bool] | 只包含數字(Unicode字元, 全形字元) | |
.get_dummies() | df | sep='|' | 把字串按照指定分隔符分割, 並返回分割後的字串出現的次數 |