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

2021-09-27 13:26:32 字數 3357 閱讀 6797

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

在 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>

1true

>>

>

0<

5false

>>

>5==

'5'false

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

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

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

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

>>

>

type(5

)<

class

'int'

>

>>

>

type

(5.0

)<

class

'float'

>

>>

>

type

('5'

)<

class

'str'

>

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...