python--元組、字典、列表、集合
1.python 元組
(1)定義元組,用()定義
eg:num = (1,2,3,4,5,6)
(2)定義只有一個值的時候,必須加上一個逗號,才能成為一個元組
eg:num = (100,)
(3)元組裡面可以定義不同型別的資料
Str、int、float、list、tuple等
eg:tuple_1 = (1,2,2.3,”sun”,[1,3,5])
(4)檢視元組長度
eg:len(tuple)
(5)切片取元組
eg:tuple[index]
(6)統計元組count方法
eg:tuple.count(xx)
(7)修改元組(對元組裡面的列表修改)
eg:tuple[index].append(xx)
(8)列表轉元組
eg:tuple(list)
(9)字串轉元組
(10)元組轉元組
(11)多維元組示例
eg:tuple[2][1]
(12)元組索引index方法
eg:tuple.index(xx)
python元組與字串的區別:
1)元組和字串都是有序的,不可修改的序列
2)元組的元素可以是任何型別,字串的元素只能是字元
3)元組的元素長度可以任意,字串的元素長度只能為1
2.python 字典
字典是一個無序的,可以修改的,元素呈鍵值對的形式,以逗號分割的,以大括號包圍的序列{ }
由於字典無序,所以我們定義字典和字典生成之後的元素的順序是不同的;
python字典的特點:
因為字典是無序的,所以字典沒有索引值;
因為字典沒有索引值,所以字典以鍵取值,字典的鍵唯一且不可修改(字典的鍵相當於列表的索引)
2.1 定義字典
(1)定義一個字典
eg:infor = {“name”:“suner”,”age”:25}
(2)新增鍵值對
eg:infor[“addr”] = “無錫”
(3)Key不存在修改字典相當於新增
eg:infor[“school”] = “XX大學”
(4)key存在修改字典
eg:infor[“school”] = “XXX大學”
(5)key存在刪除字典
eg:del infor[“school”]
(6)key不存在刪除字典會報異常
(7)字典查詢
eg:infor[“name”]
eg:infor.get(“name”) #用get查詢沒有也不會報錯
2.2 字典的取值
字典的取值 |
keys |
返回一個包含字典所有key的列表 |
values |
返回一個包含字典所有vaule的列表 | |
get |
以鍵取值,如果指定鍵不存在,預設返回None,可以指定返回內容 | |
update |
以字典格式更新指定鍵的內容,如果鍵不存在,建立鍵和值 | |
items |
返回字典鍵值呈元組形式的格式 | |
len |
測量字典,鍵值對的個數(整體) |
2.3 字典的刪除
字典的刪除
|
pop |
彈出,返回並刪除指定鍵對應的值 |
popitem |
隨機彈出一個鍵值元組,這裡隨機的原因是因為字典無序 |
|
clear |
清空字典 |
2.4 字典的判斷
字典的判斷 |
in |
判斷指定的鍵是否在字典當中,即將被廢除,之後我們python3用in |
2.5 字典的遍歷
字典的遍歷 |
通過for ...in ... |
通過for ... in ...:的語法結構,我們可以遍歷字串、列表、元組、字典等資料結構 |
3.Python列表
列表是一個有序的,可修改的,元素以逗號分割,以中括號包圍的一個序列。
3.1 定義列表
eg:num_list = [1,2,3,4,5,6,7,8,9]
3.2 列表的新增
列表的新增 |
append |
追加,在列表的尾部加入指定的元素 |
extend |
將指定序列的元素依次追加到列表的尾部(合併) |
|
insert |
將指定的元素插入到對應的索引位上,注意負索引 |
3.3 列表的刪除
列表的刪除 |
pop |
彈出,返回並刪除指定索引位上的資料,預設刪除索引為-1的資料(預設刪除最後一個) |
remove |
從左往右刪除一個指定的元素 |
|
del |
刪除整個列表或列表的資料,del是python內建功能,不是列表獨有的 |
3.4 列表的修改和查詢
列表的查詢 注:列表沒有find方法 |
count |
計數,返回要計數的元素在列表當中的個數 |
index |
查詢,從左往右返回查詢到的第一個指定元素的索引,如果沒有找到,報錯 |
3.5 列表的排序
列表的排序
|
reverse |
順序倒序 |
sort |
按照ascii碼錶順序進行排序,從小到大 |
4. python集合
集合(sets)有兩種不同的型別:可變集合(set)和不可變集合(frozenset)。對可變集合(set),可以新增和刪除元素,對不可變集合(frozenset)則不允許這樣做。
集合特點:集合與之前列表、元組類似,可以儲存多個數據,但是這些資料是不重複的。
set集合沒有順序
交集:公共部分
並集:| 沒有重複的
對稱差集:只在x或y中,但是不會同時出現在二者中
差集(a-b)是:項在a中,但不在b中。
4.1 定義集合
eg:num_set = {11,22,33,44,55}
4.2 集合
交集:公共部分 |
& |
並集:沒有重複的 |
| |
差集:只有x項有 |
- |
對稱差集:只在x或y中有,不會同時有 |
^ |
5.總結
資料型別比較 |
字串 |
列表 |
元祖 |
字典 |
是否有序 |
是 |
是 |
是 |
否 |
是否可修改 |
不 |
可 |
不 |
可 |
方法多少 |
很多 |
一般 |
很少 |
較多 |