python字典

字典(Dictionary)

字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写,拥有键和值。

创建并打印字典:

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
print(thisdict)

获取 “model” 键的值:

x = thisdict["model"]

get()获取 “model” 键的值:

x = thisdict.get("model")

把 “year” 改为 2018:

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["year"] = 2019

遍历字典

#逐个打印字典中的所有键名:
for x in thisdict:
  print(x)
#逐个打印字典中的所有值:
for x in thisdict:
  print(thisdict[x])
#使用 values() 函数返回字典的值:
for x in thisdict.values():
  print(x)

通过使用 items() 函数遍历键和值:

for x, y in thisdict.items():
  print(x, y)
#检查键是否存在
#要确定字典中是否存在指定的键,请使用 in 关键字:
#检查字典中是否存在 "model":
thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
if "model" in thisdict:
  print("Yes, 'model' is one of the keys in the thisdict dictionary")

字典长度

#要确定字典有多少项目(键值对),请使用 len() 方法。
#打印字典中的项目数:
print(len(thisdict))

删除项目

#有几种方法可以从字典中删除项目:
#pop() 方法删除具有指定键名的项:
thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.pop("model")
print(thisdict)

popitem() 方法删除最后插入的项目(在 3.7 之前的版本中,删除随机项目):

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.popitem()
print(thisdict)

del 关键字删除具有指定键名的项目:

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
del thisdict["model"]
print(thisdict)
#del 关键字也可以完全删除字典:
del thisdict

clear() 关键字清空字典:

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.clear()
print(thisdict)

复制字典

不能通过键入 dict2 = dict1 来复制字典,因为:dict2 只是对 dict1 的引用,而 dict1 中的更改也将自动在 dict2 中进行。
有一些方法可以进行复制,一种方法是使用内建的字典方法 copy()。

#使用 copy() 方法来复制字典:

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = thisdict.copy()
print(mydict)

制作副本的另一种方法是使用内建方法 dict()。

#使用 dict() 方法创建字典的副本:
thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = dict(thisdict)
print(mydict)

嵌套字典

词典也可以包含许多词典,这被称为嵌套词典。

child1 = {
  "name" : "Phoebe Adele",
  "year" : 2002
}
child2 = {
  "name" : "Jennifer Katharine",
  "year" : 1996
}
child3 = {
  "name" : "Rory John",
  "year" : 1999
}

myfamily = {
  "child1" : child1,
  "child2" : child2,
  "child3" : child3
}

复制代码

dict() 构造函数
也可以使用 dict() 构造函数创建新的字典:

thisdict = dict(brand="Porsche", model="911", year=1963)
# 请注意,关键字不是字符串字面量
# 请注意,使用了等号而不是冒号来赋值

Python 提供一组可以在字典上使用的内建方法。

  • clear() 删除字典中的所有元素
  • copy() 返回字典的副本
  • fromkeys() 返回拥有指定键和值的字典
  • get() 返回指定键的值
  • items() 返回包含每个键值对的元组的列表
  • keys() 返回包含字典键的列表
  • pop() 删除拥有指定键的元素
  • popitem() 删除最后插入的键值对
  • setdefault() 返回指定键的值。如果该键不存在,则插入具有指定值的键
  • update() 使用指定的键值对字典进行更新
  • values() 返回字典中所有值的列表
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值