python 初学6:python 字典详解

本文详细介绍了Python字典的访问、修改、字典键的特性、相关函数与方法,包括添加、更新、删除元素,以及字典与列表的差异,是Python初学者理解字典的重要参考资料。
摘要由CSDN通过智能技术生成

Python 中的字典提供了一种灵活的访问和组织数据的方式

  • 字典是由很多值组成的集合
  • 字典的索引可以是不同的数据类型,同样也不止是整数,也有字符串
  • 字典的索引被称为“键”,键及键所关联的值叫键值对(类似于Java中的Map集合)
  • 字典是另一种可变容器模型,且可存储任意类型对象。
  • 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:
dictionary  = {
   'url1':'baidu', 'url':'google', 'num1':12, 'num2':34};

键一般是唯一的,如果键重复,最后的一个键值对会替换前面的键值对,值没有唯一性要求,如下:

dic1 = {
   'name':'zhangsan','age':23,'address':'BeiJing','name':'lisi'}
# 查看字典值发现重复的键值后面的替换前面的
dic1
{
   'name': 'lisi', 'age': 23, 'address': 'BeiJing'}

dic1['name']
'lisi'

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组,如下:

dict = {
   'Alice': '2341', 'Beth': '9102', 'Cecil': '3258',('a','b'):(12,43)}

1. 访问字典数据

创建一个字典,并访问数据字典内容,以下字典的键是‘size’,‘color’,‘character’,这些键对应的值是‘big’,‘white’,‘gentle’,访问字典的值通过方括号里面添加键就可以直接进行访问,例如:

MyDog = {
   'size':'big','color':'white','character':'gentle'}

# 字典值通过[‘键’]来访问
print(MyDog['size'])
 big   #输出结果

print('My Dog has '+MyDog['color']+' fur.' + ' and it has a ' + MyDog['character']+' character')
My Dog has white fur. and it has a gentle character #输出结果

同样的,字典也可以用整数作为键,和列表的索引类似,只是字典的值是任何整数类型都行,不必要从0开始,因为键值的数据类型是任意的,如下:

MyCon = {
   12:'big',0:'white',354:'gentle',1:'good'}
# 访问键为 12 的字典值
MyCon[12]
'big'
# 访问键为 0 的字典值
MyCon[0]
'white'

因为字典是不排序的,所以不能像列表那样切片。
如果访问字典中不存在的键,将导致 KeyError 出错信息。这很像列表的“越界”
IndexError 出错信息。在交互式环境中输入以下代码,并注意显示的出错信息,因
为没有’color’键:

dic1 = {
   'name':'zhangsan','age':23,'address':'BeiJing'}
#找字典中键为 'color' 的值
dic1['color']
Traceback (most recent call last):
  File "<input>", line 1, in <module>
KeyError: 'color'

2、修改字典元素

2.1 添加和更新字典数据

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

dict = {
   'Name': 'Fiona', 'Age': 10, 'Class': 'Three'}
# 更新
dict['Age'] = 8 
# 添加
dict['School'] = "Middle School" 
# 查看字典数据 
dict
{
   'Name': 'Fiona', 'Age': 8, 'Class': 'Three', 'School': 'Middle School'}

2.2 删除字典元素

对字典元素的删除操作能单一删除也能将整个字典清空,显示的删除一个字典使用 del 命令“

dict = {
   'Name': 'Fiona', 'Age': 10, 'Class': 'Three'}

# 删除键是'Name'的条目 
del dict['Name']  

# 清空字典所有条目
dict.clear()
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值