Python中的字典类型详解

 更新时间:2023年06月07日 10:01:15   作者:郝学胜  
在Python中,字典是一种无序且可变的数据类型,用于存储键值对数据,字典可以根据键(key)来快速检索对应的值,相比于其他类型的容器,如列表(List)、元组等,字典具有更高效的查找和插入性能,因此在Python编程中被广泛使用

字典的创建

在Python中,可以使用大括号{}dict()函数来创建字典。其中,大括号内可以包含多个键值对,键和值之间用冒号:分隔,多个键值对之间用逗号,分隔。例如:

# 使用大括号创建字典
person = {'name': 'Bob', 'age': 25, 'gender': 'male'}
# 使用dict()函数创建字典
person = dict(name='Bob', age=25, gender='male')

以上两种创建方式都可以得到相同的结果,即包含三个键值对'name': 'Bob''age': 25'gender': 'male'的字典person

字典的访问

字典中的值可以通过键来访问。可以使用中括号[]操作符或get()方法来获取字典中指定键对应的值。例如:

person = {'name': 'Bob', 'age': 25, 'gender': 'male'}
# 使用中括号\[]操作符访问字典
print(person\['name'])    # 输出:Bob
# 使用get()方法访问字典
print(person.get('age'))    # 输出:25

如果在字典中查找不存在的键,使用中括号操作符会抛出KeyError异常,而get()方法则会返回None,或者可以指定一个默认值来防止返回None。例如:

person = {'name': 'Bob', 'age': 25, 'gender': 'male'}
# 使用中括号\[]操作符查找不存在的键,抛出KeyError异常
# print(person\['email'])
# 使用get()方法查找不存在的键,返回None
print(person.get('email'))    # 输出:None
# 使用get()方法查找不存在的键,返回指定默认值
print(person.get('email', 'unknown'))    # 输出:unknown

字典的修改和删除

字典中的元素是可变的,可以通过赋值操作或update()方法来修改字典中的值。如果赋值的键不存在,会自动添加该键值对。例如:

person = {'name': 'Bob', 'age': 25, 'gender': 'male'}
# 修改字典中的值
person\['age'] = 26
# 添加新的键值对
person\['email'] = '<bob@example.com>'
# 使用update()方法修改字典中的值
person.update({'age': 27, 'email': '<bob@example.org>'})
print(person)    # 输出:{'name': 'Bob', 'age': 27, 'gender': 'male', 'email': '<bob@example.org>'}

可以使用del语句或pop()方法来删除字典中的元素。del语句会直接删除指定键所对应的键值对,如果键不存在会抛出KeyError异常,而pop()方法会返回键所对应的值并将其从字典中删除,如果键不存在会返回指定的默认值。例如:

person = {'name': 'Bob', 'age': 27, 'gender': 'male', 'email': '<bob@example.org>'}
# 使用del语句删除字典中的元素
del person\['email']
# del person\['email']    # 抛出KeyError异常
# 使用pop()方法删除字典中的元素
age = person.pop('age')
# age = person.pop('age', 0)    # age等于27
# age = person.pop('height', 0)    # age等于0
print(person)    # 输出:{'name': 'Bob', 'gender': 'male'}
print(age)    # 输出:27

字典的遍历

字典中的键和值可以使用keys()values()items()方法获取,它们分别返回一个包含键、值、键值对的可迭代对象。可以使用for循环来遍历其元素。例如:

person = {'name': 'Bob', 'age': 27, 'gender': 'male'}
# 遍历字典的键
for key in person.keys():
print(key)
# 遍历字典的值
for value in person.values():
print(value)
# 遍历字典的键值对
for k, v in person.items():
print(f'{k}: {v}')

总结

字典是Python中非常重要的数据类型之一,它以键值对的形式存储数据,并提供了高效的查找和插入操作。在实际编程中,我们经常需要用字典来存储各种数据,例如配置参数、数据记录等。因此,掌握字典类型的基础用法对于Python编程是十分必要的。

以上就是Python中的字典类型详解的详细内容,更多关于Python 字典类型的资料请关注脚本之家其它相关文章!

相关文章

  • pymssql数据库操作MSSQL2005实例分析

    pymssql数据库操作MSSQL2005实例分析

    这篇文章主要介绍了pymssql数据库操作MSSQL2005的方法,可实现基本的连接、查询、插入、更新及调用存储过程等功能,非常具有实用价值,需要的朋友可以参考下
    2015-05-05
  • 在django admin中配置搜索域是一个外键时的处理方法

    在django admin中配置搜索域是一个外键时的处理方法

    这篇文章主要介绍了在django admin中配置搜索域是一个外键时的处理方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python可视化plotly 图例(legend)设置

    python可视化plotly 图例(legend)设置

    这篇文章主要介绍了python可视化plotly 图例(legend)设置,主要介绍了关于python 的legend图例,参数使用说明,具有很好的参考价值,希望对大家有所帮助,需要的朋友可以参考下卖你具体内容
    2022-02-02
  • Python实现自动生成请假条

    Python实现自动生成请假条

    这篇文章主要为大家详细介绍了如何实现用Python来批量生成请假条,这回既学了东西又做了事情,两不误!感兴趣的小伙伴可以跟随小编一起学习一下
    2022-12-12
  • python利用re,bs4,requests模块获取股票数据

    python利用re,bs4,requests模块获取股票数据

    这篇文章主要介绍了python利用re,bs4,requests模块获取股票数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python聊天室带界面实现的示例代码(tkinter,Mysql,Treading,socket)

    Python聊天室带界面实现的示例代码(tkinter,Mysql,Treading,socket)

    这篇文章主要介绍了Python聊天室带界面实现的示例代码(tkinter,Mysql,Treading,socket),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python基于SMTP协议实现发送邮件功能详解

    Python基于SMTP协议实现发送邮件功能详解

    这篇文章主要介绍了Python基于SMTP协议实现发送邮件功能,结合实例形式分析了Python使用SMTP协议实现邮件发送的相关操作技巧,并总结分析了Python发送纯文本邮件、邮件附件、图片邮件等相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • 基于Python爬取fofa网页端数据过程解析

    基于Python爬取fofa网页端数据过程解析

    这篇文章主要介绍了基于Python爬取fofa网页端数据过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Tensorflow获取张量Tensor的具体维数实例

    Tensorflow获取张量Tensor的具体维数实例

    今天小编就为大家分享一篇Tensorflow获取张量Tensor的具体维数实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python 操作 MongoDB 讲解详细

    Python 操作 MongoDB 讲解详细

    MongoDB是一款开源的、基于分布式的、面向文档存储的非关系型数据库。拥有高性能、高可用,易扩展的优点,并且支持丰富的查询语言来支持读写操作以及更复杂的查询等。接下来我们来看一下如何使用Python操作MongoDB数据库
    2021-09-09

最新评论