Python 3 基礎資料型別 (Elementary Data Type)

來源:互聯網
上載者:User

標籤:file   實值型別   對象   pytho   嵌套   lock   數值   資料類型   tin   

標準資料類型

Python3 中有六個標準的資料類型:

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

Python3 的六個標準資料類型中:

  • 不可變資料(3 個):Number(數字)、String(字串)、Tuple(元組);
  • 可變資料(3 個):List(列表)、Dictionary(字典)、Set(集合)。
# 多個變數賦值"""Python允許你同時為多個變數賦值"""a = b = c = 1# 以上執行個體,建立一個整型對象,值為 1,從後向前賦值,三個變數都指向同一個記憶體位址#為多個對象建立多個變數a, b, c = 1, 2, "runoob"

 

 

Number(數字)

Python3 支援 int、float、bool、complex(複數)

在Python 3裡,只有一種整數類型 int,表示為長整型,沒有 python2 中的 Long。

像大多數語言一樣,數實值型別的賦值和計算都是很直觀的。

內建的 type() 函數可以用來查詢變數所指的物件類型。

a, b, c, d = 20, 5.5, True, 4+3jprint(type(a), type(b), type(c), type(d))<class ‘int‘> <class ‘float‘> <class ‘bool‘> <class ‘complex‘>

此外還可以用 isinstance 來判斷:

isinstance(a, int)

isinstance 和 type 的區別在於:

  • type()不會認為子類是一種父類類型。
  • isinstance()會認為子類是一種父類類型。

注意:在 Python2 中是沒有布爾型的,它用數字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定義成關鍵字了,但它們的值還是 1 和 0,它們可以和數字相加。

Number操作

>>>5 + 4    # 加法9>>> 4.3 - 2 # 減法2.3>>> 3 * 7   # 乘法21>>> 2 / 4    # 除法,得到一個浮點數0.5>>> 2 // 4   # 除法,得到一個整數0>>> 17 % 3 # 取餘 2>>> 2 ** 5 # 乘方32

幾點提示:

  • 1、Python可以同時為多個變數賦值,如a, b = 1, 2。
  • 2、一個變數可以通過賦值指向不同類型的對象。
  • 3、數值的除法包含兩個運算子:/ 返回一個浮點數,// 返回一個整數。
  • 4、在混合計算時,Python會把整型轉換成為浮點數。
  String(字串)

Python中的字串用單引號 ‘ 或雙引號 " 括起來,同時使用反斜線 \ 轉義特殊字元。

字串的截取的文法格式如下:

str = ‘Runoob‘ print (str)          # 輸出字串print (str[0:-1])    # 輸出第一個到倒數第二個的所有字元print (str[0])       # 輸出字串第一個字元print (str[2:5])     # 輸出從第三個開始到第五個的字元print (str[2:])      # 輸出從第三個開始的後的所有字元print (str * 2)      # 輸出字串兩次print (str + "TEST") # 連接字串

運行結果:

RunoobRunooRnoonoobRunoobRunoobRunoobTEST

Python 使用反斜線(\)轉義特殊字元,如果你不想讓反斜線發生轉義,可以在字串前面添加一個 r,表示原始字串:

print(‘Ru\noob‘)Ruoobprint(r‘Ru\noob‘)Ru\noob

另外,反斜線(\)可以作為續行符,表示下一行是上一行的延續。也可以使用 """...""" 或者 ‘‘‘...‘‘‘ 跨越多行。

注意,Python 沒有單獨的字元類型,一個字元就是長度為1的字串。

word = ‘Python‘print(word[0], word[5])P nprint(word[-1], word[-6])n P

與 C 字串不同的是,Python 字串不能被改變。向一個索引位置賦值,比如word[0] = ‘m‘會導致錯誤。

注意:

  • 1、反斜線可以用來轉義,使用r可以讓反斜線不發生轉義。
  • 2、字串可以用+運算子串連在一起,用*運算子重複。
  • 3、Python中的字串有兩種索引方式,從左往右以0開始,從右往左以-1開始。
  • 4、Python中的字串不能改變。
 List(列表)

List(列表) 是 Python 中使用最頻繁的資料類型。

列表可以完成大多數集合類的資料結構實現。列表中元素的類型可以不相同,它支援數字,字串甚至可以包含列表(所謂嵌套)。

列表是寫在方括弧 [] 之間、用逗號分隔開的元素列表。

和字串一樣,列表同樣可以被索引和截取,列表被截取後返回一個包含所需元素的新列表。

列表截取的文法格式如下:

加號 + 是列表串連運算子,星號 * 是重複操作。如下執行個體:

list = [ ‘abcd‘, 786 , 2.23, ‘runoob‘, 70.2 ]tinylist = [123, ‘runoob‘] print (list)            # 輸出完整列表print (list[0])         # 輸出資料行表第一個元素print (list[1:3])       # 從第二個開始輸出到第三個元素print (list[2:])        # 輸出從第三個元素開始的所有元素print (tinylist * 2)    # 輸出兩次列表print (list + tinylist) # 串連列表

以上執行個體輸出結果:

[‘abcd‘, 786, 2.23, ‘runoob‘, 70.2]abcd[786, 2.23][2.23, ‘runoob‘, 70.2][123, ‘runoob‘, 123, ‘runoob‘][‘abcd‘, 786, 2.23, ‘runoob‘, 70.2, 123, ‘runoob‘]

與Python字串不一樣的是,列表中的元素是可以改變的!

List內建了有很多方法,例如append()、pop()等等,這在後面會講到。

注意:

  • 1、List寫在方括弧之間,元素用逗號隔開。
  • 2、和字串一樣,list可以被索引和切片。
  • 3、List可以使用+操作符進行拼接。
  • 4、List中的元素是可以改變的。

 

 

Tuple(元組)

元組(tuple)與列表類似,不同之處在於元組的元素不能修改。元組寫在小括弧 () 裡,元素之間用逗號隔開。

元組中的元素類型也可以不相同:

tuple = ( ‘abcd‘, 786 , 2.23, ‘runoob‘, 70.2  )tinytuple = (123, ‘runoob‘) print (tuple)             # 輸出完整元組print (tuple[0])          # 輸出元組的第一個元素print (tuple[1:3])        # 輸出從第二個元素開始到第三個元素print (tuple[2:])         # 輸出從第三個元素開始的所有元素print (tinytuple * 2)     # 輸出兩次元組print (tuple + tinytuple) # 串連元組

以上執行個體輸出結果:

(‘abcd‘, 786, 2.23, ‘runoob‘, 70.2)abcd(786, 2.23)(2.23, ‘runoob‘, 70.2)(123, ‘runoob‘, 123, ‘runoob‘)(‘abcd‘, 786, 2.23, ‘runoob‘, 70.2, 123, ‘runoob‘)

元組與字串類似,可以被索引且下標索引從0開始,-1 為從末尾開始的位置。也可以進行截取(看上面,這裡不再贅述)。

其實,可以把字串看作一種特殊的元組。

tup = (1, 2, 3, 4, 5, 6)print(tup[0])1print(tup[1:5])(2, 3, 4, 5)tup[0] = 11  # 修改元組元素的操作是非法的Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: ‘tuple‘ object does not support item assignment

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

構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的文法規則:

tup1 = ()    # 空元組tup2 = (20,) # 一個元素,需要在元素後添加逗號

string、list和tuple都屬於sequence(序列)。

注意:

  • 1、與字串一樣,元組的元素不能修改。
  • 2、元組也可以被索引和切片,方法一樣。
  • 3、注意構造包含0或1個元素的元組的特殊文法規則。
  • 4、元組也可以使用+操作符進行拼接。

 

 

Python 3 基礎資料型別 (Elementary Data Type)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.