iT邦幫忙

2024 iThome 鐵人賽

DAY 9
1
自我挑戰組

每日挑戰:從零開始的 Python 學習之旅系列 第 9

【Day 9】基礎語法 - 字典篇

  • 分享至 

  • xImage
  •  

Hi 大家好,

今天要開始介紹基礎語法中的字典篇,那我們開始吧!

字典的基本介紹

Q: 什麼是字典(dict, dictionary)?
A: 其實就是我們平常生活中使用到的字典,可以透過你的關鍵字,從字典裡面尋找到相對應的答案。

Q: 那為什麼Python要設計字典這樣的東西?
A: 其實字典的結構和某些程式語言的map和使用{ }包住的ojbect,有異曲同工之處。
 都是key-value pair的格式,而key就像是把value加上一個標籤,可以很快的透
 過key找到相對應的value

表示方式: { } , 內建函數dict()

# { key: value }
>>> data = {"name": "巴菲特", "deposit": 9999999, "level": [77, 88]}
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88]}
>>>
# dict()
>>> data = dict(name="巴菲特", deposit=9999999, level=[77, 88])
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88]}
>>>

字典的基本操作

只要使用key來訪問相對應的value

>>> data = dict(name="巴菲特", deposit=9999999, level=[77, 88])
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88]}
>>> data["name"]
'巴菲特'
>>> data["deposit"]
9999999
>>>

字典的添加和刪除元素

添加方式:

>>> data["age"] = 92
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88], 'age': 92}
>>> data["gender"] = "Male"
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88], 'age': 92, 'gender': 'Male'}
>>>

刪除方式:

# 使用del
{'name': '巴菲特', 'deposit': 9999999, 'level': [77, 88], 'age': 92, 'gender': 'Male'}
>>> del data["level"]
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'age': 92, 'gender': 'Male'}
>>>
# 使用pop()
{'name': '巴菲特', 'deposit': 9999999, 'age': 92, 'gender': 'Male'}
>>> data.pop("gender")
'Male'
>>> data
{'name': '巴菲特', 'deposit': 9999999, 'age': 92}
>>>

字典的遍歷方法

使用for...in方法

# app.py
datas = {'name': '巴菲特', 'deposit': 9999999, 'age': 92}

for key, value in datas.items():
    print(key, value)
PS D:\Project\practice> python app.py
name 巴菲特
deposit 9999999
age 92
PS D:\Project\practice>

字典的合併與更新

使用update()合併:

datas = {'name': '巴菲特', 'deposit': 9999999, 'age': 92}
subdata = {'gender': 'Male'}

datas.update(subdata)

print(datas)
PS D:\Project\practice> python hello.py
{'name': '巴菲特', 'deposit': 9999999, 'age': 92, 'gender': 'Male'}
PS D:\Project\practice>

使用update()更新:

datas = {'name': '巴菲特', 'deposit': 9999999, 'age': 92}
subdata = {'deposit': '1234567890'}

datas.update(subdata)

print(datas)
PS D:\Project\practice> python hello.py
{'name': '巴菲特', 'deposit': '1234567890', 'age': 92}
PS D:\Project\practice>

那今天就介紹到這裡,我們明天見~


上一篇
【Day 8】基礎語法 - 迴圈篇
下一篇
【Day 10】基礎語法 - 布林值篇
系列文
每日挑戰:從零開始的 Python 學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言