Python的基本資料型別 Dictionary

2021-08-27 00:07:37 字數 2171 閱讀 1899

字典是一組無序的集合,由key和vlaue組成,通過key對映你想要儲存或者獲取的內容, python中的字典就像現實世界中的字典一樣,都可以通過索引找到對應的值

字典的建立方式和集合一樣,也是在{}中用逗號隔開每組元素,不同的是字典中的每組元素有key:value組成,其中key是唯一的而且是不可變型別,value可以是任意型別,當然也可以重複。

# 定義乙個空字典

a={}

print(type(a))

# 輸出 dict

# 定義乙個字典

a=# 把列表轉為乙個字典

print(a)

前面說過字典中的key必須是唯一的,那如果我們定義重複的key會怎樣呢?下面通過**來演示一下

print(a)

# 輸出

b=dict([(1,'key是1'),(1,'key是2'),(1,'key是3')])

print(b)

# 輸出

通過上面的案例我們可以得出2點結論

* 定義乙個字典時出現重複的key不會報錯

* 相同的key會被後面的覆蓋

因為字典是無序的集合,所以我們也不能通過索引和切片的方式訪問,但是我們可以通過字典中的key來訪問對應的value

# 第一種方式

print(a['a'])

# 第二種方式

print(a.get('b'))

# 輸出 'banana'

# 通過key用上面兩種方式都可以對應的vaule

# 但是第一種訪問不存在的key會報錯

print(a['c'])

traceback (most recent call last):

file "", line 1, in keyerror: 'c'

# 使用get不僅不會報錯,而且還可以設定預設值

print(a.get('c','沒找到c'))

# 輸出 沒找到c

字典新增、更新元素沒有像集合提供了很多種方法

# 更新

a['b']='我要更新資料了'

print(a)

# 使用update 新增

a.update()

print(a)

# 新增

a['e']='我是新增的資料'

print(a)

# 字典是無序的集合 所以新增的資料位置在哪都一樣

訪問元素的時候我們通過key,刪除的時候我們也可以通過key來刪除,下面我來演示4種方法

a=

# 使用內建方法pop()

a.pop('a')

# 返回 '1'

print(a)

# 輸出

# 通過del刪除

del a['b']

# 輸出

# 使用內建方法popitem()

a.popitem()

# 返回('d', '4')

print(a)

# 輸出

# 使用內建方法清空字典

a.clear()

print(a)

# 輸出 {}

上述4種方法都可以刪除元素,我們來總結一下他們之間的區別

通過key來刪除元素,而且會返回被刪除key對應的value

也是通過key來刪除元素,但是不會返回值

隨機刪除一對元素,且會返回被刪除key和value組成的元組

清空字典

獲取字典中所有的key

a=

print(list(a.keys()))

# 輸出['a','b','c']

獲取字典中所有的value

a=

print(list(a.values()))

# 輸出[1,2,3]

獲取字典的長度

a=

print(len(a))

# 輸出 3

總結:要重點掌握字典key和value的關係,熟練運用字典中新增和更新操作,字典是python中重要資料型別,以後專案中使用的很廣泛

python基本資料型別

物件是python中最基本的概念,python中資料以物件的形式出現 無論是python提供的內建物件,還是使用python或是像c擴充套件庫這樣的擴充套件語言工具建立的物件。物件時記憶體中的一部分,包括數值和相關操作的集合。python程式可以分解成模組 語句 表示式以及物件,如下 1 程式由模組...

Python基本資料型別

1 python中一切都是物件。2 每乙個資料都有乙個id標示,用id 可以檢視。也可以用type檢視是什麼型別。3 常用的資料型別 int 整型 數字 boole true 值 賦值,要用大寫 a true string 字串 也稱作序列。list 列表 tuple 元組 dict 字典 set ...

Python基本資料型別

python內建許多資料基本型別。資料型別dt 表示形式 int整形如 1,0,1,float 浮點型如 1.1,0.0,1.1,str字串如 單引號或雙引號括起來的形式 hello python list 列表如 1,2 巢狀列表 1,2,3 tuple 元組如 1,2 set無序列表如 comp...