1. 程式人生 > 其它 >python之字典(dict)基礎篇

python之字典(dict)基礎篇

字典:dict

特點:

1>,可變容器模型,且可儲存任意型別物件,字串,列表,元組,集合均可;

2>,以key-value形式存在,每個鍵值 用冒號 : 分割,每個鍵值對之間用逗號 , 分割;

3>,通過key訪問value;key與value是對應的,一個字典中每個key是唯一的,但value則沒有現在;

4>,有序的,但在python3.6版本之前,字典是無序的。

1、定義空字典

name_dict = {}
name_dict = dict() # 一般用資料型別之間的轉換

2、定義一個非空字典

name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}

key--name, value --dasb, key:value-->"name":"dasb";

3,通過key訪問value
name_dict = {"name": "dasb", "age": 35, "hobby": ["love sb", "love mlt", "love mlasb"]}
print(name_dict["name"])
hobby_list = name_dict["hobby"]
print(hobby_list)
print(hobby_list[0])

4,增加一個元素

說明:如果key不存在,則新增。如果key存在則修改
name_dict = {"name": "dasb", "age": 35, "hobby": ["love sb"
, "love mlt", "love mlasb"]} # key不存在新增 name_dict["sex"] = "zx" print(name_dict) # key存在則修改 name_dict["name"] = "csb" print(name_dict)

5,字典中常用的方法之

clear():清空字典中所有元素

同樣可使用此方法 型別的還有列表(list),集合(set)

name_dict = {"name": "dasb", "age": 35, "hobby": ["love sb", "love mlt", "love mlasb"]}
name_dict.clear()
print(name_dict)

6,字典中常用的方法之

formkeys():初始化一個字典

說明:如果一個列表用foemkers轉化為字典時,列表中的元素則轉化為key鍵,如果轉化時不加value,則key鍵對應的value為None,如果新增,value則為同一個新增的值,

例如:

name_dict = dict()
name_list = ["name", "age"]
name1_dict = dict.fromkeys(name_list)
print(name1_dict)
name2_dict = dict.fromkeys(name_list, 35)
print(name2_dict)

如果列表中的元素是以元組tuple的方式存在的,則可以直接用dict轉化;

例如:

name_list = [("name", "dasb"), ("age", 35), ("hobby", ["love sb", "love mlt"])]
name_dict = dict(name_list)
print(name_dict)

7,字典中常用的方法之

get(key):通過key 獲取value值,如果key不存在則返回None
name_dict = {"name": "dasb", "age": 35, "hobby": ["love sb", "love mlt", "love mlasb"]}
name_value = name_dict.get("name")  # 存在的key
name_value = name_dict.get("sex")  # 不存在key,返回None
name_value = name_dict["sex"]  # 不存在key,則會報:KeyError: 'sex'
print(name_value)

8,字典中常用的方法之

items():把字典中每一對key 和value 以元組的形式儲存在列表中
例如:
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
print(name_dict.items())

利用for迴圈,獲取key和value

第一種方法:

name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}

for name in name_dict.items():
    key, value = name
    print(key, value)

第二種方法:

name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}

for name in name_dict.items():
    
     key = name[0]
     value = name[1]
 
     print(key, value)

9,字典中常用的方法之

keys():把字典中所有的key,儲存在一個序列中
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
print(name_dict.keys())

也可以利用迴圈,通過Key鍵獲取value

name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
print(name_dict.keys())
for key in name_dict.keys():
    value = name_dict.get(key)
    print(key,value)

10,字典中常用的方法之

pop(key):通過key刪除字典中的元素
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
name_dict.pop("name")
print(name_dict)

11,字典中常用的方法之

popitem():預設刪除字典中最後一個元素
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
name_dict.popitem()
print(name_dict)

12,字典中常用的方法之

setdefault():以元組的方式新增一個元素key不存在則新增元素,key存在則不做任何修改
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
name_dict.setdefault("sex", "中性")
name_dict.setdefault("name", "csb")
print(name_dict)

13,字典中常用的方法之

update():新增多個元素,如果key存在則更新,如果不存在則新增
name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
teacher_dict = {"age": 23, "eat": "sb", "phone": "123456789"}
name_dict.update(teacher_dict)
print(name_dict)

14,字典中常用的方法之

values():把字典中所有value值儲存在一個序列中,用法同keys 
例如:

name_dict = {"name": "dasb", "age": 35, "hobby": "love sb"}
print(name_dict.values())