Python3入門教程:基礎數據類型(上)

人生苦短,我選Python

引言

前文傳送門

接觸一門新的語言,肯定要先了解它的基礎數據類型。啥?你問我爲啥要先了解基礎數據類型?

爲了你的生命安全,還是乖乖聽我 BB 吧,別想那些有的沒的。

Python 擁有着很多的基礎數據類型,那麼,什麼是數據類型呢?

打開百度,隨手一個 Copy:

數據類型在數據結構中的定義是一個值的集合以及定義在這個值集上的一組操作。

變量是用來存儲值的所在處,它們有名字和數據類型。變量的數據類型決定了如何將代表這些值的位存儲到計算機的內存中。

小編你別跑,看我不打死你,數據類型還沒搞清楚,你又提出來一個變量的概念

當然,如果你學過編程語言,比如計算機等級考試中的 C 語言,這兩個概念並不難理解。

如果你沒有學過,那麼就有點難了,畢竟基礎概念永遠都是最難解釋的。

對Python感興趣或者是正在學習的小夥伴,可以加入我們的Python學習扣qun:855408893 ,從0基礎的python腳本到web開發、爬蟲、django、數據挖掘數據分析等,0基礎到項目實戰的資料都有整理。送給每一位python的小夥伴!每晚分享一些學習的方法和需要注意的小細節,學習路線規劃,利用編程賺外快。點擊加入我們的 python學習圈

想必大家都喝過奶茶。

在奶茶店買奶茶的時候會有小杯、中杯、大杯。

這裏的小杯、中杯、大杯就是數據類型,而其中盛放的奶茶就是變量,奶茶的名稱就是變量名。

是不是這下好理解多了?

數字

在 Python 的數字有 4 種數據類型,分別爲:

  • int(有符號整型)
  • long(長整型)
  • float(浮點型)
  • complex(複數)

小明提問:蝦米?一個數字都能整出來這麼多類型,莫不是你在忽悠我吧?

小明同學,你就不能先靜靜聽我 BB 完麼。

Python 爲我們提供了一個函數 type() ,通過這個函數我們可以獲取到當前的數據類型。示例如下:

print(type(123))

print(type(123.0))

print(type('123'))

print(type("123"))

上面示例的運行結果如下:

<class 'int'>
<class 'float'>
<class 'str'>
<class 'str'>

可以得出的結論是:

123 是整形(int)
123.0 是浮點型(float)
‘123’ 和 “123” 的類型是一致的,都是字符串 str(注意,有單雙引號,如果無引號則不會認爲是字符串類型)

我們接着使用另一個函數 isinstance() ,這個函數的作用其實從字面意思就能看出來,判斷一個對象是否是一個已知的類型,具體語法如下:

isinstance(object, classinfo)
  • object – 實例對象。
  • classinfo – 可以是直接或間接類名、基本類型或者由它們組成的元組。

示例代碼如下:

print(isinstance(123, int))

print(isinstance(123.0, float))

print(isinstance('123', str))

測試結果如下:

True
True
True

整形

整形的意思就是整數,例如:

-1,-10,1,2333333333之類的。

至於長度有多少,我們做個測試好了,示例代碼如下:

print(10**1000)

** 的含義是次方,上面這個示例代碼的意思就是 10 的 1000 次方,顯示結果如下:

10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

具體有多少個 0 我已經不想數了,反正這麼長肯定夠用了吧。

進制

講到數字就不得不提的另一個概念就是進制,想必進制大家都清楚,計算機的世界中比較常見的有二進制,生活中比較常聽到的有八進制和十六進制。

具體的表示方法如下:

  • 十進制:正常寫就 ok ,所有的數字都默認是十進制的。
  • 二進制:在最前面添加 0b 的前綴,並且組成部分必須只能由 0 或者 1 組成(廢話,有其他數字還叫二進制麼),如: 0b10101010101
  • 八進制:在最前面添加 0o 的前綴,並且組成部分必須只能有 0~7 的數字組成,如:0o12345670
  • 十六進制:在最前面添加 0x 的前綴,並且組成部分由 0~9 和 A~F 組成,如:0xdb273dc(注意:字母大小寫不做區分,也可以寫成 0xDB273DC )

浮點數

簡單來講浮點數就是帶小數點的數字

注意:浮點數只能是十進制的數字

其實,浮點數還包括分數,示例如下:

print(1/2)

print(1/3)

print(1/6)

結果如下:

0.5
0.3333333333333333
0.16666666666666666

因爲是無限循環小數,所以會存在誤差。

複數

來,先複習一波上初中的基礎概念:

  • 有理數:有理數是指兩個整數的比。有理數是整數和分數的集合。簡單來講就是整數 + 有限或者無限循環小數。
  • 無理數:簡單講就是無限不循環小數。

有理數和無理數加在一起成爲實數,在實數之外還有一種叫做複數。

  • 複數:我們把形如 z = a + bi(a,b均爲實數)的數稱爲複數,其中 a 稱爲實部, b 稱爲虛部, i 稱爲虛數單位。

想要回憶更多的內容請各位自行百度吧。

在 Python 中,複數的表現方式如下:

print(1+1j)

print(type(1+1j))

結果如下:

(1+1j)
<class 'complex'>

概念裏都講了,複數是有實部和虛部的,那在 Python 中如何獲取呢?示例如下:

print((2.46+1.37j).real)

print((2.46+1.37j).imag)

總感覺學 Python 是在考驗我的英語水平, real 真實的, imag 虛假的。

布爾值

布爾值其實就兩個值,對或者錯,true or false 。

在很多其他的變成語言中,布爾值都會列爲一個單獨的數據類型,但是 Python 並沒有這麼做。

那麼,布爾值有什麼用呢?

這個用處可就大了,比如會頻繁的使用在各種邏輯判斷中,這個當然我們後面再聊。

先看下如何簡單的使用吧,示例如下:

print(123 == 123.0)

print(123 == '123')

測試結果:

True
False

What?123 竟然會等於 123.0 ,不是說他們兩個類型不一致麼?

注意: == 只能用來做數值的比較,並不會比較當前的數據類型,所以 123 和 123.0 是相等的。而 ‘123’ 不等於 123 則是因爲 ‘123’ 是字符串,不能數值運算,而 123 是數字。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章