1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        常見的字符串操作

        共 2413字,需瀏覽 5分鐘

         ·

        2020-11-30 15:22

        一部分字符串操作的總結(jié),比較基礎(chǔ)。目錄:

        • 使用str.split() 切分?jǐn)?shù)據(jù)

        • 將 datetime 類型轉(zhuǎn)化為字符串類型

        • 字符串的合并操作

        • 使用 str.strip() 去除字符串前面和后面所有的字符串

        • 替代字符串中的某些字符串為另外的字符串

        • Python 中的 i++,i+

        下面簡單的演示。

        使用 str.split() 切分?jǐn)?shù)據(jù)

        import?pandas?as?pd
        from?pandas?import?Series,DataFrame
        man?=?pd.DataFrame({
        ????'data':['張三|男','李四|男','王五|男']
        })
        man



        #?使用str.split()?把數(shù)據(jù)分成兩列
        man?=?man['data'].apply(lambda?x?:Series(x.split('|')))
        man




        將 datetime 類型轉(zhuǎn)化為字符串類型

        #?將datetime類型轉(zhuǎn)化為字符串類型
        from?datetime?import?datetime
        stamp?=?datetime(2019,5,1)
        stamp
        datetime.datetime(2019,?5,?1,?0,?0)
        str_stamp=?str(stamp)
        str_stamp
        '2019-05-01?00:00:00'

        字符串的合并操作

        使用 join() 連接字符串?dāng)?shù)組

        # join():連接字符串?dāng)?shù)組。將字符串、元組、列表、Series中的元素以指定的字符(分隔符)連接生成一個新的字符串
        a=['1','2','3','4','5']
        text?=?'??'.join(a)
        text
        '1??2??3??4??5'


        使用 + 連接字符串

        #?使用加號
        x?=?'a'?+?'b'
        x
        'ab'


        使用 format() 將多個字符串合并,主要用在變量輸出上

        x?=?'i?am?{1}?and?{0}?years?old'.format(30.,?'Tony')
        x
        'i?am?Tony?and?30.0?years?old'


        使用 Pandas 自帶的 cat() 函數(shù)

        #??Series.str.cat(others=None,??#?要合并的另外一個對象,如果為空則將左側(cè)對象組合
        #?????????????????sep=None,?????#?合并的分隔符,默認(rèn)為空
        #?????????????????na_rep=None)??#?如果遇到NA值的處理方式,默認(rèn)忽略

        EG?=?pd.Series(['a',?'b',?'c']).str.cat(sep=';')
        EG
        'a;b;c'
        EG?=?pd.Series(['a',?'b',?'c']).str.cat(['A',?'B',?'C'],?sep='@@')
        EG
        0??? a@@A
        1????b@@B
        2????c@@C
        dtype:?object


        使用 str.strip() 去除字符串前面和后面所有的字符串

        #?str.strip([chars]);去除字符串前面和后面的所有設(shè)置的字符串,默認(rèn)為空格
        st?=?"???hello????"
        st?=?st.strip()
        print(st?+?'word')
        helloword
        #?刪除字符串'l,?o'
        st?=?st.strip('l,?o')
        print(st)
        he


        替代字符串中的某些字符串為另外的字符串

        #?str.replace(old,?new[,?max])
        # old --?將被替換的子字符串。
        # new --?新字符串,用于替換old子字符串。
        #?max?--?可選字符串,?替換不超過?max?次

        st?=?"hello"
        st?=?st.replace('l',?'a',?1)
        st
        'healo'
        #?替換字符串中的某些子串,可以用正則表達(dá)式來匹配被選子串。

        #?re.sub(pattern,?repl,?string,?count=0,?flags=0)
        # pattern:表示正則表達(dá)式中的模式字符串;
        # repl:被替換的字符串(既可以是字符串,也可以是函數(shù));
        # string:要被處理的,要被替換的字符串;
        # count:匹配的次數(shù), 默認(rèn)是全部替換
        import?re

        st?=?"hello?2019"
        st?=?re.sub("([0-9]+)","word",st)
        print(st)
        hello?word


        Python 中的 i++,i+

        順便在這篇基礎(chǔ)下面總結(jié)下 Python 中的 i++,i+ 這類寫法和 Java 不一樣。在新手入門時會有點疑問,這里列一下。

        i+1

        這種都是一樣的寫法,沒什么問題,很好理解。

        for?i?in?range(3):
        ????i=i+1
        ????print(i)
        1
        2
        3


        i+

        i+ 就是 Python 中的自增寫法。相當(dāng)于其他語言的 ++i。

        for?i?in?range(3):
        ????i+=5
        ????print(i)
        5
        6
        7


        i-

        Python 中的自減寫法。

        for?i?in?range(3):
        ????i-=5
        ????print(i)
        -5
        -4
        -3


        ++i

        Python 中的 ++i,僅僅是作為判斷運算符號,類似數(shù)學(xué)中的負(fù)負(fù)得正。

        #?體現(xiàn)在這個案例中,就是對結(jié)果值沒影響
        for?i?in?range(3):
        ????++i
        ????print(i)
        0
        1
        2


        i++

        Python 中不支持這類寫法,所以直接報錯。

        for?i?in?range(3):
        ????i++
        ????print(i)
        ??File?"",?line?2
        ????i++
        ???????^
        SyntaxError:?invalid?syntax
        瀏覽 43
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            久久丫精品国产免费 | 小仙女导航| 欧美一区二区在线观看 | 黄色小说文 | 在线观看免费A片成人网站 | 国产美女无遮挡免费视频 | 99久久精品免费看国产交换 | 久久青青草大香蕉手机视频在线 | 大粗鸡巴久久久久 | 中文字幕 - 色网 |