1. 程式人生 > 其它 >python容器入門(簡單易懂)

python容器入門(簡單易懂)

技術標籤:python容器python列表

容器

容器就是供我們使用的物件(不是處物件那個)
用於方便我們操作和管理大批量的資料
分為四個型別:

一、list列表

列表,即有序的數列
在程式中,線性表:陣列、連結串列、棧、佇列
python的list底層就是基於雙向連結串列結構設計的
如何定義list

1.藉助python的弱資料型別的特點

ls1 = []  #ls為變數名 自己定義,此為空列表
ls2 = [2,3,4] #  		建立了有這些元素的列表
print(ls1)
print(ls2)

在這裡插入圖片描述

2.藉助python提供的全域性函式建立list

ls1 = list()                     #空表
ls2 = list([3,5,6,7,8])	  #有這些元素的列表
print(ls1)
print(ls2)

在這裡插入圖片描述

訪問list中的元素

線性表都是具有下標(索引)的,可以根據索引訪問
列表物件[下標](從0開始,注意越界)

ls1 = [2,3,4,6,5]         #建立了有這些元素的列表
ls2 = list([3,5,6,7,8])	  #有這些元素的列表
print(ls1[3])
print(ls2[0])
len(ls2)                    #統計list中的函式

在這裡插入圖片描述在這裡插入圖片描述

遍歷列表

藉助迴圈語句即可

ls2 = list([3,5,6,7,8])	  #有這些元素的列表

for i in ls2:
     print(i)

在這裡插入圖片描述

控制列表

append(元素):在列表尾部追加元素

insert(index,元素):在對應索引位插入元素
remove(元素):移除元素,如果不存在,則報錯
pop (index=一1):預設移除最後一個元素,如果存在引數,則就是要移除的下標(若是有誤,則會報錯)
copy:將此列表內容複製到另一列表上
clear ( ):清空列表
reverse ( ):清空列表
sort ():清空列表
index(元素):查詢無素的位置
count(元素):合併列表
extend: 合併列表

二、set集合

特點:
1.無序的。
2.不能重複。
底層是使用雜湊表的結構設計的(hash)
定義集合:

1.藉助python的弱資料型別的特點

s = {1,3,5} #必須有值,不然預設空{}是字典型別,不是集合

在這裡插入圖片描述

2.藉助python提供的全域性函式建立set

s = set({1,3,5})

在這裡插入圖片描述

遍歷

只能for遍歷,因為是無序的while無法遍歷

控制集合

add() : 新增元素
clear() : 清除列表
copy() : 淺拷貝物件
difference() : 差集
intersection() : 交集
union() : 並集
remove(元素) :移除元素,如果不存在,則報錯
pop(元素) : 隨機(arbitrary)移除,不存在,則報錯
discard(元素) : 隨機(arbitrary)移除,不存在,則什麼都不做

三、tuple元組

不可變資料型別,裡面的元素不允許被修改

1.藉助python的弱資料型別的特點

t = (1,3,5)

在這裡插入圖片描述

2.藉助python提供的全域性函式建立tuple

t = tuple((1,2,4,5))

在這裡插入圖片描述

控制元組

count :統計元素個數
index :檢視元素索引位置

四、dict字典

字典是一一對應的。

1.藉助python的弱資料型別的特點

d = {}
d = {k1: v1, k2: v2}

2.藉助python提供的全域性函式建立dict

d = dict({})
d = dict({a1:b2,a2:b2})

單個訪問

d["k1"]
d.get("k2")

p["name"] = "lisi"	# 增加鍵值對

遍歷

1,
for key in p:
		     print(key, p[key])
2.
for key in p.keys():
		     print(key , p.get(key))	
3.
for key, value in p.items():
		     print(key, value)

for (key, value) in p.items():
		     print(key, value)

for t in p.items():
		     print(t[0], t[1])

控制字典

clear:刪除字典內所有元素。
copy:返回一個字典的淺複製。
get:返回指定鍵的值。
keys() :將所有的key返回
values() : 將所有的值返回
setdefault :返回指定鍵的值,如果鍵不在字典中,將會新增鍵並將值設定為一個指定值,預設為None。
items() : 一對一對的返回
pop(key) : 通過key刪除對應鍵值對
popitem() : 安裝 LIFO (last-in, first-out) order 刪除鍵值對