Python 字典(Dictionary)
版权所有,未经许可,禁止转载
章节
- Python 介绍
- Python 开发环境搭建
- Python 语法
- Python 变量
- Python 数值类型
- Python 类型转换
- Python 字符串(String)
- Python 运算符
- Python 列表(list)
- Python 元组(Tuple)
- Python 集合(Set)
- Python 字典(Dictionary)
- Python If … Else
- Python While 循环
- Python For 循环
- Python 函数
- Python Lambda
- Python 类与对象
- Python 继承
- Python 迭代器(Iterator)
- Python 模块
- Python 日期(Datetime)
- Python JSON
- Python 正则表达式(RegEx)
- Python PIP包管理器
- Python 异常处理(Try…Except)
- Python 打开文件(File Open)
- Python 读文件
- Python 写文件
- Python 删除文件与文件夹
字典
字典是无序、可修改的键值对集合。在Python中,字典用大括号包裹。
示例
创建并打印一个字典:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
print(thisdict)
访问项目
你可以通过键查询字典:
示例
获取“city”键的值:
x = thisdict["city"]
还有一个方法叫get(),效果相同:
示例
获取“city”键值:
x = thisdict.get("city")
更改值
您可以通过键来更改其值:
示例
将“street”改为"西溪街道":
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
thisdict["street"] = "西溪街道"
遍历字典
您可以使用for循环遍历字典。
遍历字典时,返回值是字典的键,但也可以返回值。
示例
逐个打印字典中的所有键名:
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关键字:
示例
检查字典中是否有“city”:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
if "city" in thisdict:
print("字典中存在'city'这个键")
字典的长度
要确定一个字典有多少项(键值对),使用len()方法。
示例
打印字典中的条目数:
print(len(thisdict))
添加项目
给字典添加一个项目,是通过给新键赋值:
示例
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
thisdict["borough"] = "拱墅"
print(thisdict)
删除项目
有几种方法可以从字典中删除条目:
示例
pop()方法删除指定键名的项:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
thisdict.pop("city")
print(thisdict)
示例
popitem()方法删除最后插入的项(在3.7之前的版本中,删除的是随机项):
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
thisdict.popitem()
print(thisdict)
示例
del关键字删除指定键名的项:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
del thisdict["model"]
print(thisdict)
示例
del关键字也可以整个删除字典,包括字典自身:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
del thisdict
print(thisdict) # 此处会报错,因为字典已被删除
示例
clear()方法清空字典:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
thisdict.clear()
print(thisdict)
复制一个字典
您不能简单地通过dict2 = dict1来复制字典,dict2只是引用dict1,在dict1中所做的更改将自动体现在dict2中。
复制有多种方法,其中一种方法是使用字典的内置方法copy()。
示例
使用copy()方法复制字典:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
mydict = thisdict.copy()
print(mydict)
复制的另一种方法是使用内置的方法dict()。
示例
使用dict()方法复制字典:
thisdict = {
"province": "浙江",
"city": "杭州",
"street": "祥符街道"
}
mydict = dict(thisdict)
print(mydict)
dict() 构造方法
也可以使用dict()构造函数创建一个新字典:
示例
thisdict = dict(province="浙江", city="杭州", street="祥符街道")
# 注意键不是字符串,没有引号
# 注意在赋值时使用等号而不是冒号
print(thisdict)
字典的方法
Python有一组可以在字典上使用的内置方法。
| 方法 | 描述 |
|---|---|
| clear() | 从字典中删除所有元素 |
| copy() | 返回字典的副本 |
| fromkeys() | 返回具有指定键和值的字典 |
| get() | 返回指定键的值 |
| items() | 返回包含每个键值对的元组的列表 |
| keys() | 返回包含字典键的列表 |
| pop() | 删除具有指定键的元素 |
| popitem() | 删除最后插入的键值对 |
| setdefault() | 返回指定键的值。如果键不存在:插入具有指定值的键 |
| update() | 使用指定的键值对更新字典 |
| values() | 返回字典中所有值的列表 |

浙公网安备 33010602011771号