1. 程式人生 > 其它 >Python - dict 字典常見方法

Python - dict 字典常見方法

字典詳解

https://www.cnblogs.com/poloyy/p/15083781.html

get(key)

作用

指定鍵,獲取對應值

兩種傳參

  • dict.get(key):鍵存在則返回對應值,不存在則返回 None
  • dict.get(key, default):鍵存在則返回對應值,不存在則返回設定好的 default 值

栗子

# get
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}
print(book.get("title"))
print(book.get("
books")) print(book.get("books", "預設值")) # 輸出結果 Python 入門基礎 None 預設值

clear()

作用

清空字典所有鍵值對

栗子

# clear
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}

print(book)
book.clear()
print(book)


# 輸出結果
{'title': 'Python 入門基礎', 'author': '張三', 'press': '機械工業出版社'}
{}

pop(key)

作用

  • 指定鍵,移除對應的鍵值對,並返回值
  • 鍵不存在,會報錯

栗子

# pop
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}

print(book.pop("title"))
print(book)


# 輸出結果
Python 入門基礎
{'author': '張三', 'press': '機械工業出版社'}

update()

作用

更新字典鍵值對

栗子一:傳入的是字典

# update 栗子一
book = {
    'title': 'Python 入門基礎
', 'author': '張三', 'press': '機械工業出版社' } book1 = { "title": "Python 從入門到放棄" } # 若傳入字典的鍵是已存在的,則更新原有的值 book.update(book1) print(book) book2 = { "money": 119 } # 若傳入字典的鍵是不存在的,則新增新的鍵值對 book.update(book2) print(book) # 輸出結果 {'title': 'Python 從入門到放棄', 'author': '張三', 'press': '機械工業出版社'} {'title': 'Python 從入門到放棄', 'author': '張三', 'press': '機械工業出版社', 'money': 119}

栗子二:傳入的是 iterable

d = {'x': 2}
d.update([(
'y', 2), ('z', 3)]) print(d) # 輸出結果 {'x': 2, 'y': 2, 'z': 3}

栗子三:傳入的是關鍵字引數

d = {'x': 2}

d.update(y=3, z=0)
print(d)


# 輸出結果
{'x': 2, 'y': 3, 'z': 0}

copy()

作用

將字典淺拷貝到另一個字典

栗子

# copy
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社',
    'page': [1, 2, 3]
}
# 淺拷貝到新變數
book1 = book.copy()
print(book1)

# 修改原來的字典物件
book['title'] = "入門到放棄"  # 改字串-不可變物件
book['page'][0] = 11  # 改陣列-可變物件

print(book, book1)


# 輸出結果
{'title': 'Python 入門基礎', 'author': '張三', 'press': '機械工業出版社', 'page': [1, 2, 3]}
{'title': '入門到放棄', 'author': '張三', 'press': '機械工業出版社', 'page': [11, 2, 3]} {'title': 'Python 入門基礎', 'author': '張三', 'press': '機械工業出版社', 'page': [11, 2, 3]}

淺拷貝、深拷貝的區別

items()

作用

  • 返回字典中所有鍵值對 item
  • 鍵值對 item 是一個元組,第 0 個元素是鍵,第 1 個元素是值

栗子

# items
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}

# 一個變數則是元組
for item in book.items():
    print(item)

# 兩個變數則取元組第 0、1 位置的值
for key, value in book.items():
    print(key, value)


# 輸出結果
('title', 'Python 入門基礎')
('author', '張三')
('press', '機械工業出版社')

title Python 入門基礎
author 張三
press 機械工業出版社

keys()

作用

返回字典中所有的鍵

栗子

# keys
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}

for key in book.keys():
    print(key)


# 輸出結果
title
author
press

values()

作用

返回字典中所有的值

栗子

# values
book = {
    'title': 'Python 入門基礎',
    'author': '張三',
    'press': '機械工業出版社'
}

for value in book.values():
    print(value)


# 輸出結果
Python 入門基礎
張三
機械工業出版社