千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > python字典用法

python字典用法

来源:千锋教育
发布人:xqq
时间: 2024-01-18 16:46:46 1705567606

Python字典用法

_x000D_

Python中的字典是一种可变容器模型,用于存储键值对。字典中的键必须是唯一的,而值可以不唯一。字典是无序的,即字典中的元素没有顺序。

_x000D_

字典的特点:

_x000D_

- 字典中的键必须是唯一的;

_x000D_

- 字典中的键必须是不可变的,如字符串、数字或元组;

_x000D_

- 字典中的值可以是任意类型的,如字符串、数字、列表、元组、字典等;

_x000D_

- 字典是无序的。

_x000D_

字典的创建

_x000D_

在Python中,可以使用花括号 {} 或 dict() 函数来创建一个字典。

_x000D_

示例:

_x000D_

`python

_x000D_

# 使用花括号创建字典

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(person)

_x000D_

# 使用 dict() 函数创建字典

_x000D_

person = dict(name='张三', age=18, gender='男')

_x000D_

print(person)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

{'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

{'name': '张三', 'age': 18, 'gender': '男'}

_x000D_ _x000D_

字典的访问

_x000D_

可以使用字典的键来访问字典中的值。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(person['name'])

_x000D_

print(person['age'])

_x000D_

print(person['gender'])

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

张三

_x000D_

18

_x000D_ _x000D_

如果访问不存在的键,则会抛出 KeyError 异常。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(person['height'])

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

KeyError: 'height'

_x000D_ _x000D_

可以使用 get() 方法来访问字典中的值,如果键不存在,则返回 None 或指定的默认值。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(person.get('name'))

_x000D_

print(person.get('height'))

_x000D_

print(person.get('height', '未知'))

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

张三

_x000D_

None

_x000D_

未知

_x000D_ _x000D_

字典的修改和删除

_x000D_

可以使用赋值语句来修改字典中的值。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

person['age'] = 20

_x000D_

print(person)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

{'name': '张三', 'age': 20, 'gender': '男'}

_x000D_ _x000D_

可以使用 del 语句来删除字典中的键值对。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

del person['age']

_x000D_

print(person)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

{'name': '张三', 'gender': '男'}

_x000D_ _x000D_

字典的遍历

_x000D_

可以使用 for 循环来遍历字典中的键值对。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

for key, value in person.items():

_x000D_

print(key, value)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

name 张三

_x000D_

age 18

_x000D_

gender 男

_x000D_ _x000D_

可以使用 for 循环来遍历字典中的键。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

for key in person.keys():

_x000D_

print(key)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

name

_x000D_

age

_x000D_

gender

_x000D_ _x000D_

可以使用 for 循环来遍历字典中的值。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

for value in person.values():

_x000D_

print(value)

_x000D_ _x000D_

输出结果:

_x000D_ _x000D_

张三

_x000D_

18

_x000D_ _x000D_

字典的常用方法

_x000D_

- clear():清空字典;

_x000D_

- copy():复制字典;

_x000D_

- fromkeys():创建一个新字典,其中包含指定的键和值,默认值为 None;

_x000D_

- items():返回一个包含所有键值对的元组列表;

_x000D_

- keys():返回一个包含所有键的列表;

_x000D_

- values():返回一个包含所有值的列表;

_x000D_

- pop():删除指定键并返回对应的值;

_x000D_

- popitem():随机删除一个键值对并返回对应的键和值;

_x000D_

- setdefault():获取指定键的值,如果键不存在,则返回指定的默认值,并将其插入到字典中;

_x000D_

- update():将指定字典中的键值对添加到当前字典中。

_x000D_

示例:

_x000D_

`python

_x000D_

person = {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(person.clear()) # None

_x000D_

print(person.copy()) # {'name': '张三', 'age': 18, 'gender': '男'}

_x000D_

print(dict.fromkeys(['name', 'age', 'gender'])) # {'name': None, 'age': None, 'gender': None}

_x000D_

print(person.items()) # dict_items([('name', '张三'), ('age', 18), ('gender', '男')])

_x000D_

print(person.keys()) # dict_keys(['name', 'age', 'gender'])

_x000D_

print(person.values()) # dict_values(['张三', 18, '男'])

_x000D_

print(person.pop('age')) # 18

_x000D_

print(person.popitem()) # ('gender', '男')

_x000D_

print(person.setdefault('name', '未知')) # 张三

_x000D_

print(person.setdefault('height', 180)) # 180

_x000D_

print(person) # {'name': '张三', 'height': 180}

_x000D_

person.update({'age': 20, 'gender': '男'})

_x000D_

print(person) # {'name': '张三', 'height': 180, 'age': 20, 'gender': '男'}

_x000D_ _x000D_

问答

_x000D_

1. 字典中的键必须是唯一的吗?

_x000D_

是的,字典中的键必须是唯一的。

_x000D_

2. 字典中的键可以是什么类型?

_x000D_

字典中的键必须是不可变的,如字符串、数字或元组。

_x000D_

3. 如何访问字典中的值?

_x000D_

可以使用字典的键来访问字典中的值,如 person['name']。

_x000D_

4. 如何修改字典中的值?

_x000D_

可以使用赋值语句来修改字典中的值,如 person['age'] = 20。

_x000D_

5. 如何删除字典中的键值对?

_x000D_

可以使用 del 语句来删除字典中的键值对,如 del person['age']。

_x000D_

6. 如何遍历字典中的键值对?

_x000D_

可以使用 for 循环和 items() 方法来遍历字典中的键值对,如 for key, value in person.items():。

_x000D_

7. 如何获取字典中的键或值?

_x000D_

可以使用 for 循环和 keys() 或 values() 方法来遍历字典中的键或值,如 for key in person.keys(): 或 for value in person.values():。

_x000D_

8. 如何清空字典?

_x000D_

可以使用 clear() 方法来清空字典,如 person.clear()。

_x000D_

9. 如何复制字典?

_x000D_

可以使用 copy() 方法或 dict() 函数来复制字典,如 person.copy() 或 dict(person)。

_x000D_

10. 如何创建一个新字典?

_x000D_

可以使用 fromkeys() 方法来创建一个新字典,如 dict.fromkeys(['name', 'age', 'gender'])。

_x000D_
tags: python教程
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT