一、序列類型
1.1 字符串str
基礎
1.2 列表list
基礎
列表定義: 使用中括號[..., ...]
括起來的數據組成一個組合類型, 稱爲列表. 列表是可變類型. 在python中用list
表示
支持如下操作
- 索引取值: 和字符串操作一致
- 切片: 和字符串操作一致
- 拼接(
+
): 和字符串操作一致 - 重複(
*
): 和字符串操作一致 - 修改值:
列表變量[start:end] = 序列
示例程序
li = [1, 2, 3, 4, 5, "a", "b", "c"]
print(li[0])
print(li[1])
print(li[-1])
print(li[-3])
print(li[3:6])
print(li[3:])
print(li[:6])
print(li[-3:])
print(li[-6: -3])
print(li + ["D", "E"])
print(li + ["D", "E"]*3)
li[0] = "一"
li[-1] = "C"
print(li)
li[1:5] = ["二", '三', '四', '五']
print(li)
- 列表中可存放任意類型的值, 但是在實際使用經常存放的是同一種數據類型.
1.3 元組tuple
基礎
元組的定義: 使用圓括號(..., ...)
將數據組合存放在一起, 組成一個組合類型, 稱爲元組. 元組和字符串一樣是不可變類型. 在python中用tuple
表示
元組支持的操作
- 索引取值
- 切片
- 拼接
- 重複
這些操作和字符串列表一致.
注意問題
- 凡是涉及到元組元素個數改變的都會新建一個元組對象
- 凡是對元組元素進行修改的都會報錯.
- 建立一個空元組時建議使用內置函數
tuple()
建立 - 創建一個只有一個元素的元組時, 記得在元素後面添加一個逗號
,
二、散列類型
元素在這些類型中存放不考慮器邏輯位置. 既是元素在內存無序存放.
2.1 集合基礎 set
元素以存放在{..., ...}
中的數據類型稱爲集合.集合中的元素時無序的、不重複的, 集合是可變數據類型.
注意點
- 集合類型的元素不可以是可變的數據類型。如果存在可變數據類型的元素會觸發異常
- 作爲一種無序的多項集,集合並不記錄元素位置或插入順序。 相應地,集合不支持索引、切片或其他序列類的操作。
- 集合也支持
x in set
,len(set)
和for x in set
- 如果要定義一個空集合, 使用內置對象
ste()
建立.
示例
se = {1, 2, 4, 3, 8, 9, 10, "a"}
se1 = {"hello"}
se2 = set() # 空集合
print(se, se1, se2)
2.2 字典dict
通過將以逗號分隔的 鍵: 值
對存放在花括號之內({..., key: value, ...}
)來創建, 也是 無序的
鍵不重複
注意點
- 包含列表、字典或其他可變類型的值(此類對象基於值而非對象標識進行比較)不可用作鍵。字典中的
key
如果爲可變數據類型則報錯 - 數字類型用作鍵時遵循數字比較的一般規則:如果兩個數值相等 (例如 1 和 1.0) 則兩者可以被用來索引同一字典條目。 (但是請注意,由於計算機對於浮點數存儲的只是近似值,因此將其用作字典鍵是不明智的。)
- 簡單講:字典中 key 是唯一,必須爲不可變數據類型 字典中value可以重複 字典是可變數據類型
示例代碼
dic = {"name": "dyp", "age": "22", "high": 175}
dic1 = {"name": "dyy"}
dic2 = {} # 空字典
print(dic, dic1, dic2)