通過C學Python(2)序列型別

2022-08-14 03:00:17 字數 1703 閱讀 9563

序列型別:

自己的理解,包含有順序的一組元素的容器,其中每乙個元素都可以通過表示其順序位置的整形數字下標取出來。

字串 str

列表 list

元組 tuple

位元組流 bytes ,一般python中只把str/list/tuple當做序列型別,我發現bytes很多地方也符合序列型別的特性,這裡放在一起

字串的元素是一系列字元,其中的元素不可以單獨更改,在c中模擬為const char* 型別,表示時既可以用單引號'也可以用雙引號",還可以用三個單引號'''或三個雙引號"""來包含其中的元素,用單引號包含的字串,其中的元素如果有單引號,則需要轉義,而其中的雙引號無需轉義,反之用雙引號包含的字串,其中的元素如果有雙引號,則需要轉義,而其中的單引號無需轉義,在三引號中,內部的單引號雙引號都無需轉義,而且支援換行。在引號前加r,變成r'data'這樣的形式,則引號中的轉義字元全部失效,即原樣列印引號中的內容,通常構建正規表示式模式的時候用的比較多。字串的每乙個元素都是乙個字元,但是資料型別同樣為str。

位元組流與字串類似,元素同樣不可以更改,表示也可以用單引號、雙引號、三引號,但是要在引號前加b,變成b'data'這樣的形式。位元組流的每乙個元素都是int,但是切片型別為bytes。

列表是一種比較強大的容器,其中的元素可以是任意型別,包括可以放入另乙個列表,並且其中的元素可以更換,可以新增和刪除。模擬c,可以看做是元素為void*的鍊錶,但是list比這種鍊錶要強大的多。表示方法為用中括號包含其中的元素,每個元素之間用逗號分隔。

元組是一種簡化的列表,從建立之後就是不可變的,不能新增、刪除、更改其中的元素,但是其中的元素可以是可變的資料型別,比如list就是一種可變的型別。表示方法為用小括號包含其中的元素,每個元素之間用逗號分隔。

切片:擷取序列型別中一部分元素作為新的序列物件,表現形式和通過索引取元素類似,用中括號,其中的引數和c的for迴圈常用方式類似,第乙個引數為起始位置,第二個引數為終止位置,第三個引數為步長,例如a[1:6:2],模擬為for(i=1;i<6;i+=2),將a中符合該條件的元素重新拼裝到一起,形成乙個新的序列物件。步長及其前的冒號可以省略,預設步長為1。起始位置可以留空,預設值為0;終止位置可以留空,預設找到結尾;三個引數都可以為負數,位置為負數表示從結尾向前數。

型別轉換:

str() 將物件轉換為字串型別,物件用print列印出來是什麼樣,轉換出來的字串就是什麼樣

list() 將物件轉換為列表型別,序列型別的資料都可以轉換為list,將其中每乙個元素遍歷出來,新增到新生成的list中

tuple()將物件轉換為元組型別,和list()類似

bytes()將物件轉換為位元組流型別,list和tuple的元素,如果都是在0~255之間的int型資料,可以直接轉換為bytes,字串要轉換為bytes必須指定位元組編碼,例如bytes('abc','utf8')

檢查成員:

檢查乙個元素是否是序列物件中的成員,用法 :  元素 in 序列  ,返回值為true或false,可以用在條件判斷

拼接:兩個相同序列型別的物件可以進行拼接,例如'aaa'+'bbb'='aaabbb'

複製:乙個序列型別物件可以通過乘乙個int型數完成複製,例如'123'*4='123123123123'

檢查乙個資料的資料型別:type(資料或變數)

查詢乙個序列物件的元素個數:len(序列物件)

檢視乙個類有哪些方法可用:dir(資料或變數或類)

檢視乙個類或函式的使用說明:help(待查資料)

python2 序列和元組簡單使用

1 序列 列表 元組 包含多項資料的資料結構,可通過索引或下標來序列成員 列表是可變的,元組是不可變的 列表 可變 list ele1,ele2,ele3,元組 一旦被建立,程式不能修改元組的元素 tuple ele1,ele2,ele3,乙個元組 ele1,list1 20,10,python m...

python入門到禿頂(2) 序列型別方法

引子 列表是乙個物件,在python中,列表物件或者說其他的物件他們各自都實現了一些東西 手是不是可以拿東西,是不是可以寫 這些東西就是手的功能,同樣的也是這個物件的功能 什麼是功能?我們講方法或函式的時候,實現某種特定的功能內建函式dir 檢視的它方法 如果乙個函式或方法的開頭有is,則多半是用來...

Python基礎 (四)序列2

集合dict b dict name wwy age 18,job student c dict name wwy age 18 job student a zip d name age job e wwy 18,student f dist zip d,e f fromkeys g dict.fr...