Python六大數據類型


BEGIN:

python3數據類型主要分為以下六大類

  • Numbers(數字)
  • String(字符串)
  • List(列表)
  • Tuple(元組)
  • Dictionary(字典)
  • Set(集合)

Python3 的六個標准數據類型中:

  不可變數據(3 個):Number(數字)、String(字符串)、Tuple(元組);

  可變數據(3 個):List(列表)、Dictionary(字典)、Set(集合)。

 

1、數字類型:

python3的數字類型包括:

  • int(長整型
  • float(浮點型)
  • complex(復數)
  • bool(布爾型)

注意:在Python 3里,只有一種整數類型 int,表示為長整型,沒有 python2 中的 Long。在 Python2 中是沒有布爾型的,它用數字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定義成關鍵字了,但它們的值還是 1 和 0,它們可以和數字相加。

數字數據類型用於存儲數值,他們是不可改變的數據類型,若改變數字數據類型會分配一個新的對象;當指定一個值時,Number 對象就會被創建,如:

a = 1
b = 2

創建了兩個實例對象,值分別為1和2,當改變a的值為3時,會為變量a重新分配對象。使用del語句可以刪除一些對象的引用,如:

               

 

 2、字符串類型:

 python的字符串或串(String)是由數字、字母、下划線組成的一串字符,如:

     

字符串取值:python字符串(列表)有2種取值順序,如(下圖左):

  • 從左到右索引默認0開始的,最大范圍是字符串長度少1
  • 從右到左索引默認-1開始的,最大范圍是字符串開頭

python字符串不能通過取下標的方式修改指定位置的字符,如(下圖右)::

  0  1  2  3  4  5  6        

  a  b  c  d  e  f  g             

 -7    -6   -5      -4      -3      -2      -1           

               

 字符串截取:s = a[i:j],其中i,j可以不寫,表示從位置i開始到位置j結束,其中截取的字符串不包括位置j,如:

    

 字符串連接用‘+’號,如:

字符串重復用'*‘號,如:

 

  3、列表類型:

python的列表可以完成大多數集合類的數據結構實現。它支持字符,數字,字符串甚至可以包含列表(即嵌套或者叫多維列表,可以用來表示多維數組)。列表用 [ ] 標識,是 python 最通用的復合數據類型,如:

      

 列表取值(同字符串取值),如(下左),修改指定位置的元素值,如(下右):

                            

列表截取(同字符串取值),如(下圖左);此外,列表的截取還可以添加第三個參數步長,即[i:j:k]截取從位置i到位置j(包括i不包括j)步長為k,如(下圖中);該方法可以用來對列表進行逆序變換,如(下圖右):

                

     'a'  'b'  'c'  'd'  'e'

     0    1   2   3    4

c[1:4:2]          *|___________*______|

c[0:5:3]    *|__________________*______|

c[0:5:1]    *|______*_____*_____*______|* 

 列表連接(同字符串連接)用’+‘,如:

 列表重復(同字符串重復)用’*‘, 如:

多維數組初始化方案:

[...[[[0 for i in range(x)] for  j in range(y)] for k in range(z)]...]

如,二維數組初始化:

 

  4、元組類型:

python的元組類似於list列表,元組用 () 標識。內部元素用逗號隔開。但是元組不能二次賦值,相當於只讀列表,如:

                       

 元組的取值、截取、連接、重復與列表一樣,如:

        

雖然tuple的元素不可改變,但它可以包含可變的對象,比如list列表。

構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的語法規則,對於空元組直接用小括號或者tuple()表示,如下圖左;對於1個元素的元組,則需要在元素后面添加逗號,如圖右:

                          

 

  5、字典類型:

字典(dictionary)是除列表以外python之中最靈活的內置數據結構類型;列表是有序的對象集合,字典是無序的對象集合;字典用"{ }"標識;字典由索引(key)和它對應的值value組成,如:

 字典取值,字典當中的元素是通過鍵來存取的,而不是通過偏移存取,如:

 

 鍵(key)必須使用不可變類型(數字、字符串、元組);在同一個字典中,鍵(key)必須是唯一的,如:

 

  6、集合類型:

 python的集合(set)是由一個或數個形態各異的大小整體組成的,構成集合的事物或對象稱作元素或是成員;基本功能是進行成員關系測試和刪除重復元素;可以使用大括號 { } 或者 set() 函數創建集合,注意:創建一個空集合必須用 set() 而不是 { },因為 { } 是用來創建一個空字典,如:

 set()函數只接受一個參數,且改參數類型不為數字類型,

                 

錯誤創建,如: 

     

 

列表、元組、字典、集合的比較

列表[ ](list):有序可改變集合,允許重復數據。
元組( )(tuple):有序不可改變集合,允許重復數據。
集合{ }(set):無序無索引(索引為鍵值)集合,無重復數據。
字典{ }(dictionary):無序,可變,有索引集合,無重復數據。

 

python數據類型轉換:

int(x) :將x轉化為一個整數,向下取整,如:

float(x):將x轉化為一個浮點數

complex(x [,imge]):將x轉化為一個復數,如:

str(x):將x轉化為一個字符串,如:

repr(x):將對象 x 轉換為表達式字符串,如:

eval(x):用來計算在字符串中的有效Python表達式,並返回一個對象,其實就是能計算字符串表達式,並得到結果,如:

 tuple(s):將序列s轉化為一個元組,如:

 list(s):將序列s轉化為一個列表,如:

 set(s):將序列s轉化為可變集合,可用於列表去重,如 :

      

 dict():創建一個字典。

 frozenset(s):將s轉換為不可變集合

chr(x):將一個整數轉化為其ASCIIi碼對應的字符,如:

 ord(x):將一個字符轉化為一個整數,該整數為x對應的ASCII碼,如:

 hex(x):將一個整數轉換為一個十六進制字符串,如:

 oct(x):將一個整數轉換為一個八進制字符串

 

END.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM