欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python如何拆分含有多種分隔符的字符串

 更新時(shí)間:2024年02月09日 09:52:29   作者:AllardZhao  
這篇文章主要介紹了Python如何拆分含有多種分隔符的字符串問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

如何拆分含有多種分隔符的字符串?

實(shí)際案例

我們要把某個(gè)字符串依據(jù)分隔符號(hào)拆分不同的字段

該字符串包含多種不同的分隔符

例如:

s = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz'

其中"<,><;><|><\t>"都是分隔符號(hào),如何處理?

解決方案

  • 方法1:連續(xù)使用str.split()方法,每次處理一種分隔符號(hào)。
  • 方法2:使用正則表達(dá)式的re.split()方法,一次性拆分字符串。

代碼演示

# 單一分隔符
str1 = 'root 12125 0.0 0.0 33679596 904 ?? SNs 五02下午' \
       ' 0:00.01 /usr/libexec/per'
print(str1.split())
'''
 str.spilt用法介紹:
    split(sep=None, maxsplit=-1) -> list of  strings
    seq為分隔符參數(shù)默認(rèn)為空白字符(whitespace),包含空格、制表符(\t)、換行(\n)、回車(\r)
    seq不同同時(shí)傳入多個(gè)分隔符,只能每次傳入一種
'''
 
 
# 多種不同的分隔符
# 方法1:連續(xù)多次使用str.split方法,每次處理一種分隔符
def my_split(s, ds):
    #  s1:待分隔字符串,ds:包含所有分隔符的字符串
    """
     需要注意有種情形是連續(xù)兩個(gè)分隔符,如'i,,j'
     列表中會(huì)出現(xiàn)空字符串,此時(shí)就需要對(duì)結(jié)果進(jìn)行過濾。
    """
    res = [s]
    for d in ds:
        t = []
        list(map(lambda x: t.extend(x.split(d)), res))
        res = t
    # 使用列表解析過濾空字符串
    return [x for x in res if x]
 
 
s1 = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz'
print(my_split(s1, ';,|\t'))
 
# 方法2(推薦):使用正則表達(dá)式re.split
'''
    re.split方法介紹:
        split(pattern, string, maxsplit=0, flags=0)
        pattern為正則表達(dá)式,可以使用正則進(jìn)行多種分隔符切割
'''
import re
 
s2 = 'ab;cd|efg|hi,jkl|mn\topq;rst,uvw\txyz'
# 中括號(hào)中為分隔符,+號(hào)表示前面字符1個(gè)或多個(gè)
str2 = re.split('[,;\t|]+', s2)
print(str2)
 
'''
 需要注意的是,對(duì)于單一分隔符的情況使用str.split效率會(huì)更快一些,
 但是不能同時(shí)處理多個(gè)分隔符,對(duì)于多個(gè)分隔符情況使用re.split。
'''

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python greenlet實(shí)現(xiàn)原理和使用示例

    Python greenlet實(shí)現(xiàn)原理和使用示例

    這篇文章主要介紹了Python greenlet實(shí)現(xiàn)原理和使用示例,greenlet是Python中的一個(gè)并行處理庫,需要的朋友可以參考下
    2014-09-09
  • Python中類的初始化特殊方法

    Python中類的初始化特殊方法

    本文給大家介紹一下Python中類才初始化時(shí)候的特殊方法,通過實(shí)例給大家做了分析,一起來學(xué)習(xí)下。
    2017-12-12
  • 基于Python實(shí)現(xiàn)快遞信息提取

    基于Python實(shí)現(xiàn)快遞信息提取

    這篇文章主要為大家介紹了如何利用Python實(shí)現(xiàn)提取快遞信息,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-03-03
  • python3報(bào)錯(cuò)check_hostname?requires?server_hostname的解決

    python3報(bào)錯(cuò)check_hostname?requires?server_hostname的解決

    這篇文章主要介紹了python3報(bào)錯(cuò)check_hostname?requires?server_hostname的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Python進(jìn)度條神器tqdm使用實(shí)例詳解

    Python進(jìn)度條神器tqdm使用實(shí)例詳解

    Python進(jìn)度條神器tqdm是一個(gè)快速、可擴(kuò)展的進(jìn)度條工具,可以輕松地為Python腳本添加進(jìn)度條。它可以在循環(huán)中自動(dòng)計(jì)算進(jìn)度,并在終端中顯示進(jìn)度條,讓用戶了解程序的運(yùn)行情況。tqdm還支持多線程和多進(jìn)程,并且可以自定義進(jìn)度條的樣式和顯示方式。
    2023-06-06
  • Python數(shù)據(jù)分析中常見統(tǒng)計(jì)方法詳解

    Python數(shù)據(jù)分析中常見統(tǒng)計(jì)方法詳解

    數(shù)據(jù)分析是現(xiàn)代社會(huì)中不可或缺的一部分,通過對(duì)數(shù)據(jù)的統(tǒng)計(jì)和分析,我們可以得出有用的信息和見解,本文將介紹在?Python?中常見的數(shù)據(jù)統(tǒng)計(jì)方法,希望對(duì)大家有所幫助
    2024-02-02
  • django 模型字段設(shè)置默認(rèn)值代碼

    django 模型字段設(shè)置默認(rèn)值代碼

    這篇文章主要介紹了django 模型字段設(shè)置默認(rèn)值代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python如何實(shí)現(xiàn)excel數(shù)據(jù)添加到mongodb

    python如何實(shí)現(xiàn)excel數(shù)據(jù)添加到mongodb

    本文介紹了python是如何實(shí)現(xiàn)excel數(shù)據(jù)添加到mongodb,為了將數(shù)據(jù)導(dǎo)入mongodb,引入了pymongo,xlrd包,需要的朋友可以參考下
    2015-07-07
  • python實(shí)現(xiàn)密度聚類(模板代碼+sklearn代碼)

    python實(shí)現(xiàn)密度聚類(模板代碼+sklearn代碼)

    這篇文章主要介紹了python實(shí)現(xiàn)密度聚類(模板代碼+sklearn代碼),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 使用Python的Matplotlib繪制漸變的彩色曲線

    使用Python的Matplotlib繪制漸變的彩色曲線

    這篇文章主要介紹了使用Python的Matplotlib繪制漸變的彩色曲線,Matplotlib是Python生態(tài)圈中應(yīng)用最為廣泛的2D繪圖庫,通過擴(kuò)展工具包mplot3d,也可以繪制簡單的3D模型,需要的朋友可以參考下
    2023-08-08

最新評(píng)論