1.1 內建類型
Python 提供了多種內建數據類型,幫助解決編程中的各種問題。我們已經學過其中一些,現在再詳述一下。以下是主要的內建數據類型簡介:
-
int— 沒有小數部分的整數。 -
float— 浮點數(實數)。 -
complex— 複數(由實部和虛部組成)。 -
str— 字串,是字符的序列。 -
bool— 布爾數據類型,取值為True或False。 -
None— 表示無值的特殊類型。 -
bytes— 不可變的位元組序列。 -
bytearray— 可變的位元組序列。 -
memoryview— 允許以二進制形式操作數據而不複製數據的對象。
下表列出了這些數據類型及其特性:
| 數據類型 | 描述 | 使用示例 |
|---|---|---|
int |
整數 | x = 10 |
float |
浮點數 | y = 3.14 |
complex |
複數 | z = 1 + 2j |
str |
字串 | s = "Hello, world!" |
bool |
布爾類型 | is_valid = True |
None |
無值 | result = None |
bytes |
不可變的位元組序列 | b = bytes([50, 100, 76]) |
bytearray |
可變的位元組序列 | ba = bytearray([50, 100]) |
memoryview |
記憶體中數據的表示 | mv = memoryview(b'abc') |
使用這些數據類型可以在 Python 中實現任何邏輯,從基本的算術運算和文本操作到複雜的二進制數據處理和記憶體管理。
1.2 集合
除了存儲數據之外,Python 還可以同時存儲整組對象。這些類型被稱為 集合。集合是各種數據結構,它們允許存儲、管理和處理元素組。以下是 Python 中的主要集合類型:
-
list (列表)— 可變的有序元素集合。 -
tuple (元組)— 不可變的有序元素序列。 -
range (範圍)— 通常用於循環的數字序列。 -
set (集合)— 無序的唯一元素集合。 -
dict (字典)— 鍵-值對集合,鍵是唯一的。 -
frozenset (凍結集合)—set的不可變版本。
下表列出了這些集合及其特性:
| 集合類型 | 描述 | 示例 |
|---|---|---|
list |
可變,元素可重複 | my_list = [1, 2, 3] |
tuple |
不可變,元素可重複 | my_tuple = (1, 2, 3) |
range |
不可變的數字序列 | my_range = range(1, 10) |
set |
無序的唯一元素集合 | my_set = {1, 2, 3} |
dict |
鍵-值對,鍵是唯一的 | my_dict = {'a': 1, 'b': 2} |
frozenset |
不可變的唯一元素集合 | my_frozenset = frozenset([1, 2, 3]) |
這些集合各有其獨特的屬性和方法,使它們適合於不同的編程任務,從簡單的數據存儲到更複雜的數據處理和管理。我們會在接下來的講座中詳細討論它們。
1.3 類和對象
內建類型很好用,但有時候這還不夠用。在這種情況下,Python 提供了定義自己的類型的能力——類。
Python 中的類提供了一種包裝相關函數和數據的方法。此外,它們允許建模具有特定行為和屬性的真實或抽象對象。
例如,假設你需要描述一個 "智能手機" 類。這個類可以包含關於型號、製造商、內存容量和操作系統的數據。此外,它還可以有描述智能手機行為的函數(方法),如開機和關機、安裝應用程式等等。
可以使用關鍵字 class 來創建類。這個關鍵字創建一個新的對象類型,並允許新類從另一個類中繼承屬性和方法。
首先,我們將學習如何使用現有的類和創建它們的對象,然後當時機成熟時,我們將創建自己的類。
需要了解的是,類擁有自己的內建函數(也就是所謂的類方法),這些函數以以下方式調用:
object.方法(參數)
記得我們調用過 format() 函數嗎?這正是其中一個例子。接下來的講座中我們會更詳細地討論函數、類和對象。
GO TO FULL VERSION