Python 極簡教程(三)資料型別

2022-08-30 03:15:12 字數 2708 閱讀 5586

每種語言都有各種資料型別。這就像在現實生活中,我們計數的時候需要用到數字,在表述金額、重量、距離等需要精確計數時用到小數,在日常交談中要用文字,等等。在計算機語言中,為了表述不同的情況,也需要用到各種資料型別。

在 python 主要有數值型別(int, float),字串型別,布林型和空值。

python 中整型來表示整數,正數或者負數,沒有小數點。10 和 10.0 是兩種資料型別。

浮點數也就是我們常見的帶小數點的數字。之所以叫浮點數,是因為小數點的位置不固定,也就是浮動的。

比如 10.01 可以寫為 1.001 * 10^1,也可以寫為 0.1001 * 10^2。

字串是最常用的資料型別之一,用引號包裹起來的就是字串。在 python 中,引號可以是雙引號,也可以是單引號。但是不能混用。

同時也可以使用三對引號(單雙都可以)來標記多行字串。

>>> char = 'nemo'    # 單引號

>>> char2 = "python" # 雙引號

>>> char3 = 'python" # 單雙引號混用,語法錯誤

>>> char4 = 'this 's a pig' # 語法錯誤,可以將外面的引號替換為雙引號,或者使用轉義符

>>> char5 = 'this \'s a pig'

python 中還有很多關於字串的操作,將在後續教程中詳細講解。

布林型,只有兩個值,就是我們通常說的真與假,錯與對,是和否。

在計算機語言中,通常使用布林值來表示條件是否成立,條件成立則為 true,不成立則為 false。

>>> 3 > 1

true

>>> 0 < 5

false

>>> 5 == '5'

false

空值 none 是 python 中的一種特殊資料型別,嚴格意義上來說也不算是一種資料型別。空值用來表示什麼都沒有,空字串不是空,空的字串也是字串,而空值什麼都不是。在其他語言或資料庫中用 null 表示。

常見於函式中,當函式沒有定義返回值的時候,預設返回的就是 none。

在 python 中,用於判斷資料型別的函式主要有兩種,type()isinstance()

type()函式用於檢視資料的型別:

>>> type(5)

>>> type(5.0)

>>> type('5')

isinstance()用於判斷資料的型別,符合返回true,不符合返回false

>>> isinstance(5, int)      # isinstance 需要兩個引數,第乙個是值,第二個是型別

true

>>> isinstance('5', int)

false

>>> isinstance('5', str)

true

>>> isinstance(true, int)

true

>>> isinstance(true, bool)

true

這裡有個現象isinstance(true, int)也是符合的,我們上面說過true是布林型,怎麼int型也是符合的呢?

其實布林型是int的一種,值只有 0 和 1 罷了。

>>> true == 1

true

>>> false == 0

true

不同的資料型別是可以互相轉換的。如果要轉為整數型別,可以使用int()函式,如果轉為浮點型,可以使用float()函式, 如果轉為字串型別,可以使用str()函式。

目標型別

函式int

int()

strstr()

float

folat()

>>> int('15')

15>>> int('15a') # 報錯,字串轉 int ,必須全部是十進位制的數字

valueerror: invalid literal for int() with base 10: '15a'

>>> int('1.1') # 報錯,看似浮點數也不行,但是這個可以用 float 轉為浮點數

valueerror: invalid literal for int() with base 10: '1.1'

>>> float('1.1')

1.1>>> float('11')

11.0

>>> str(100)

'100'

其餘轉換情況可自行嘗試。

在 python 中,任意的資料型別,都是物件!當然,還不止於此,在 python 中所見皆物件。不過這句話現在不需要理解,先記住就好。

本結思考

5 == 5.0,結果是什麼?為什麼?

5 is 5.0,結果是什麼?為什麼?

Python 極簡教程(三)資料型別

每種語言都有各種資料型別。這就像在現實生活中,我們計數的時候需要用到數字,在表述金額 重量 距離等需要精確計數時用到小數,在日常交談中要用文字,等等。在計算機語言中,為了表述不同的情況,也需要用到各種資料型別。在 python 主要有數值型別 int,float 字串型別,布林型和空值。python...

Python 極簡教程(十四)while 迴圈

迴圈簡單來說就是讓一段 按你想要的方式多次執行。軟體擁有強大的運算能力,就是由迴圈提供的。在 python 中支援的迴圈由兩種 while迴圈 和for迴圈。現在我們先來講while迴圈。while 的中文意思為當 的時候。顧名思義,當條件滿足的時候做什麼事情。來看看 while 語句的格式 whi...

極簡Python學習教程 Class類

眾所周知,python是一門物件導向的程式語言,物件導向的程式語言 自然而然的 跟 類class 不可分割。那什麼是類class呢?類其實就是一種自定義資料型別,跟c 中的 int float double等基本資料型別 相似。類class 包含了 成員變數 和 成員函式 以下是簡單的示例 pyth...