<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          強(qiáng)烈推薦:Python字符串(string)方法整理(一)

          共 3030字,需瀏覽 7分鐘

           ·

          2019-11-14 23:21

          fcd58e247a1fdc758a07c19590232d4c.webp

          作者:駿馬金龍

          原文地址:

          https://www.cnblogs.com/f-ck-need-u/p/9127699.html


          python中字符串對(duì)象提供了很多方法來(lái)操作字符串,功能相當(dāng)豐富。


          print(dir(str))
          [..........'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']


          這些方法的使用說(shuō)明見(jiàn)官方文檔:string methods,本文對(duì)它們進(jìn)行詳細(xì)解釋,各位以后可將本文當(dāng)作手冊(cè)。


          這里沒(méi)有模式匹配(正則)相關(guān)的功能。python中要使用模式匹配相關(guān)的方法操作字符串,需要import re導(dǎo)入re模塊。關(guān)于正則模式匹配,參見(jiàn):re Module Contents。


          注意,python中字符串是不可變對(duì)象,所以所有修改和生成字符串的操作的實(shí)現(xiàn)方法都是另一個(gè)內(nèi)存片段中新生成一個(gè)字符串對(duì)象。例如,'abc'.upper()將會(huì)在劃分另一個(gè)內(nèi)存片段,并將返回的ABC保存在此內(nèi)存中。


          下文出現(xiàn)的"S"表示待操作的字符串。本文沒(méi)有對(duì)casefold,encode,format,format_map進(jìn)行介紹,前兩者和unicode有關(guān),后兩者內(nèi)容有點(diǎn)太多。


          1.大小寫(xiě)轉(zhuǎn)換


          1.1 lower、upper


          S.lower()S.upper()


          返回S字符串的小寫(xiě)、大寫(xiě)格式。(注意,這是新生成的字符串,在另一片內(nèi)存片段中,后文將不再解釋這種行為)


          例如:

          >>> print('ab XY'.lower())ab xy>>> print('ab XY'.upper())AB XY


          1.2 title、capitalize


          S.title()S.capitalize()


          前者返回S字符串中所有單詞首字母大寫(xiě)且其他字母小寫(xiě)的格式,后者返回首字母大寫(xiě)、其他字母全部小寫(xiě)的新字符串。


          例如:

          >>> print('ab XY'.title())Ab Xy>>> print('abc DE'.capitalize())Abc de


          1.3 swapcase

          S.swapcase()


          swapcase()對(duì)S中的所有字符串做大小寫(xiě)轉(zhuǎn)換(大寫(xiě)-->小寫(xiě),小寫(xiě)-->大寫(xiě))。


          >>> print('abc XYZ'.swapcase())ABC xyz


          2.isXXX判斷


          2.1 isalpha,isdecimal,isdigit,isnumeric,isalnum


          S.isdecimal()S.isdigit()S.isnumeric()S.isalpha()S.isalnum()


          測(cè)試字符串S是否是數(shù)字、字母、字母或數(shù)字。對(duì)于非Unicode字符串,前3個(gè)方法是等價(jià)的。


          例如:

          >>> print('34'.isdigit())True>>> print('abc'.isalpha())True>>> print('a34'.isalnum())True


          2.2 islower,isupper,istitle


          S.islower()S.isupper()S.istitle()


          判斷是否小寫(xiě)、大寫(xiě)、首字母大寫(xiě)。要求S中至少要包含一個(gè)字符串字符,否則直接返回False。例如不能是純數(shù)字。


          注意,istitle()判斷時(shí)會(huì)對(duì)每個(gè)單詞的首字母邊界判斷。例如,word1 Word2、word1_Word2、word1()Word2中都包含兩個(gè)單詞,它們的首字母都是"w"和"W"。因此,如果用istitle()去判斷它們,將返回False,因?yàn)閣是小寫(xiě)。


          例如:

          >>> print('a34'.islower())True>>> print('AB'.isupper())True>>> print('Aa'.isupper())False>>> print('Aa Bc'.istitle())True>>> print('Aa_Bc'.istitle())True>>> print('Aa bc'.istitle())False>>> print('Aa_bc'.istitle())False
          # 下面的返回False,因?yàn)榉鞘鬃帜窩不是小寫(xiě)>>> print('Aa BC'.istitle())False


          2.3 isspace,isprintable,isidentifier


          S.isspace()S.isprintable()S.isidentifier()


          分別判斷字符串是否是空白(空格、制表符、換行符等)字符、是否是可打印字符(例如制表符、換行符就不是可打印字符,但空格是)、是否滿足標(biāo)識(shí)符定義規(guī)則。


          例如:


          1.判斷是否為空白。沒(méi)有任何字符是不算是空白。


          >>> print(' '.isspace())True>>> print(' \t'.isspace())True>>> print('\n'.isspace())True>>> print(''.isspace())False>>> print('Aa BC'.isspace())False


          2.判斷是否是可打印字符

          >>> print('\n'.isprintable())False>>> print('\t'.isprintable())False>>> print('acd'.isprintable())True>>> print(' '.isprintable())True>>> print(''.isprintable())True


          3.判斷是否滿足標(biāo)識(shí)符定義規(guī)則


          標(biāo)識(shí)符定義規(guī)則為:只能是字母或下劃線開(kāi)頭、不能包含除數(shù)字、字母和下劃線以外的任意字符。

          >>> print('abc'.isidentifier())True>>> print('2abc'.isidentifier())False>>> print('abc2'.isidentifier())True>>> print('_abc2'.isidentifier())True>>> print('_abc_2'.isidentifier())True>>> print('_Abc_2'.isidentifier())True>>> print('Abc_2'.isidentifier())True


          未完待續(xù)。


          覺(jué)得不錯(cuò),點(diǎn)個(gè)在看唄!

          瀏覽 124
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲日本黄色片 | 日本A V免费观看电影大全 | 一级J毛片 | 日韩无码国产高清 | 欧美熟妇XXXXX |