溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中關(guān)于list、tuple、字符串的比較

發(fā)布時(shí)間:2020-07-06 16:23:46 來源:網(wǎng)絡(luò) 閱讀:1645 作者:121502_hl 欄目:編程語言

List定義及常用的方法見上一篇博客。

 

Tuple

元組tuple的定義:

            tuple是一個有序的元素組成的不可變對象的集合,使用小括號()表示,是可迭代對象

 

元組中數(shù)據(jù)的訪問

            支持索引(下標(biāo)訪問)

            正負(fù)所有索引不可以超界,否則引起IndexError報(bào)錯

元組通過索引訪問

               tuple[index] ,index就是索引,使用中括號訪問

        index(value,[value,[start,stop]])

                   index是使用值查找,從指定區(qū)間指定區(qū)間查找元組內(nèi)的元素是否匹配,匹配到第一個就立即返回索引,找不到就拋出valueError異常時(shí)間復(fù)雜度為O(n)

        count(value)

                  返回元組中值的個數(shù),需要遍歷整個元組,時(shí)間復(fù)雜都為O(n)

 

        len(tuple)

                   返回元組中元素的個數(shù)。


由于元組是只讀的,所以增,改,刪方法都沒有

 

字符串


字符串的定義

            字符串是一個個字符的集合,是一個有序的序列,使用單引號,雙引號,三引號引住的字符序列,字符串是不可變對象,可以索引,可以迭代。從python3起,字符串是Unicode類型

 

字符串元素的訪問可通過下標(biāo)訪問。

 

字符串的連接

            join()            “string”.join(iterable)

                    將可迭代對象連接起來,使用指定的string作為分割符,返回一個新的字符串

 

            +

                    將兩個字符串連接起來,生成一個新的字符串,空間占用翻倍

 

字符串的分割分成兩部分split系和partition系

split :將字符串按照分割符分割成若個個字符串,并返回列表。

         split(seq=None,maxaplit=)是從左至右進(jìn)行切割,可以指定分割字符串,在不指定的情況下默認(rèn)是空白字符左分割符,還可以指定分割的次數(shù),-1表示遍歷整個字符串

        rsplit (seq=None,maxsplit=-1)是從右至左進(jìn)行切割,用法同split一樣。

        splitlines([keepends])  是按照行來進(jìn)行切分字符串,keepends指的是否保留行分割符,行分割符包括\n,\r\n,\r

partition:將字符串按照分割符分割成兩端,返回2段和分割符的元組

       partition(seq):從左至右,遇到分割符就把字符串分割為兩部分,返回頭,分隔符,尾三部分的三元組,沒有找到分割符,就返回頭,空的分割,空尾的三元組。必須指定seq

       Rpartition(seq):從右至左,遇到分割符就把字符串分割成兩部分,和partition用法一樣。

 

字符串針對于英文的一些方法:

        upper() 全大寫

        lower() 全小寫

        swapcase() 交換大小寫

        title() 標(biāo)題的每個單詞都大寫

        capitalized()首個單詞大寫

        center(width[,fillchar]) 以長度為寬度的字符串為中心返回,使用指定的fillchar完成填充

        zfill(width) 返回一個字符串,左邊右ASCII ‘0’填充的字符串,居右,左邊右0填充。

        ljust(width[,fillchar]) 左對齊

        rjust(width[,fillchar]) 右對齊

 

字符串的查找及修改(字符串不可變,原字符串不修改)

“修改”:

        replace(old,new,[,count])字符串中找到匹配替換為新字串,放回新字符串,可以指定替換幾次,不指定就是所有匹配的都替換

        strip([chars])從字符串兩端去除指定的字符集chars中的所有字符,不指定chats,去除兩端的空白字符

        lstrip([chars])從左邊開始

        rstrip ([chars]) 從右邊開始

 

字符串的查找:

        find(sub[,start[,end]])

                   在指定的區(qū)間[start,end],從左至右,查找字串sub.找到返回索引,沒找到放回-1

        rfind(sub[,start[,end]])

                  在指定的區(qū)間從右至左,和find一樣

        index(sub[,start[,end]])

                 在指定的區(qū)間[start,end],從左至右,查找字串sub,找到返回索引,沒找到就拋出異常valueError

        rIndex(sub[,start[,end]])

                  在指定的區(qū)間[start,end]從左至右,查找字串sub,和index使用一樣

        len()   返回字符串中字符的個數(shù)

        count(sub[,start[,end]])

                   在指定的區(qū)間[start,[end]],從左至右,統(tǒng)計(jì)字串sub出現(xiàn)的次數(shù)


字符串的判斷:

        endswith(suffix[,start[,end]])

                   在指定的區(qū)間,字符串是否是suffix結(jié)尾

        startswith(prefix[,start[,end]])

                   在指定的區(qū)間[start,end],字符串是否是prefix開頭

        isalnum() 是否是數(shù)字和字母的組成

        isalpha()  是否是字母

        isdecimal() 是否只包含十進(jìn)制數(shù)字

        isdigit()  是否全部是數(shù)字(0~9)

        isifentifier() 是不是字母和下劃線開頭,其他都是字母,數(shù)字,下劃線

        islower  是否都是小寫

        isupper() 是否都是大寫

        isspace() 是否只包含空白字符

 

字符串的格式化:

在python3中,字符串的格式化鼓勵使用format()函數(shù)

    format()函數(shù)格式字符串語法

        “{}{XXX}”.format(*args,**kwargs) 返回一個字符串a(chǎn)rgs是位置參數(shù),是一個元組,kwargs是關(guān)鍵字參數(shù),是一個字典?;ɡㄌ柋硎菊嘉环瑊}表示按照順序匹配位置參數(shù),{n}表示取位置參數(shù)索引位n的值。{XXX}表示在關(guān)鍵字參數(shù)中搜索名稱一致的。{{}}表示打印花括號。

 

    format()函數(shù)中使用的參數(shù)

        位置參數(shù)

                就是按照位置順序用位置參數(shù)替換前面的格式化字符串的占位符

 

         關(guān)鍵字符參數(shù)或命名參數(shù)

                位置參數(shù)按照序號匹配,關(guān)鍵字參數(shù)按照名稱匹配

 

          訪問元素

                 “{0[0].}{0[1]}’.format((‘www’,’dsfa’))

                    對象屬性訪問

                    可以直接訪問對象的屬性

 

          可以直接使用對齊方式:

                    <  左對齊

                    >右對齊

                    ^居中對齊


List

tuple

字符串

可變對象

不可變對象

不可變對象

使用[]

使用()

使用‘’,“”,“”“”

可迭代對象

可迭代對象

可迭代對象

有序的序列,可以索引

有序的序列,可以索引

有序的序列,可以索引

index(value,[start,[ends]])

index(value,[start,[ends]])

index(sub,[start,[ends]])   rIndex(sub,[start,[ends]])

find(sub,[start,[ends]])

rfind(sub,[start,[ends]])

count(value)

count(value)

count(sub,[start,[ends]])

len(list)

len(tuple)

len(str)

append(object)


replace(old,new,[,count])

insert(index,object)


lstrip([chars])

rstrip ([chars])

extend(iteratable)



+


+

*


*

remove()



pop()



clear()



reverse()



sort()



in

in

in



join

 



split()



rsplit()



splitlines()



partition()



rpartition()



upper()



lower()



swapcase()



Title(),capitalize(),center(),zfill(),ljust(),rjust()


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI