python字典特点_python教程 - python字典dict | 猿说编程

15.Python 字典dict

最后更新于:2020-03-21 11:57:18

前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict.

python中的字典可与字符串/列表/元组不同,因为字典dict需要由两部分组成,分别是key和value,简称:键值对,下面具体讲解一下关于字典的特点:

1.由一个或者多个键值对构成,键值对的类型可以不相同也可以相同;

2.字典中的键值对需要写在{}中括号内部,键值对中的key和value用:隔开,键值对与键值对之间用逗号隔开;

3.字典是一个无序的集合;

4.字典中key具有唯一性;

13131414-300x169.png

定义一个字典:

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解忧

@Blog(个人博客地址): shuopython.com

@WeChat Official Account(微信公众号):猿说python

@Github:www.github.com

@File:python_dict.py

@Time:2019/9/27 20:45

@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!

"""

dict1 = dict() # 定义一个空字典

print(dict1)

print(type(dict1)) # 输出字典类型 dict

print(len(dict1)) # 获取字典键值对数量

print("***"*20) # 小窍门:直接打印60 个 *

#字典可以有一个或者多个键值对构成,键值对与键值对之间使用逗号隔开

# "name" / "age" / "sing_gou" 是key

# "隔壁老王" / 42 / True 是value

dict2 = {"name":"隔壁老王", "age":42, "singe_dog":True}

print(dict2)

print(type(dict2)) # 输出字典类型 dict

print(len(dict2)) # 获取字典键值对数量

print("***"*20) # 小窍门:直接打印60 个 *

# 字典中出现了两个一样的key:"age",默认后面的value会覆盖前面的value

dict3 = {"name":"隔壁老王", "age":42, "singe_dog":True,"age":15}

print(dict3)

输出:

{}

0

************************************************************

{'name': '隔壁老王', 'age': 42, 'singe_dog': True}

3

************************************************************

{'name': '隔壁老王', 'age': 15, 'singe_dog': True}

注意:如果字典中出现相同的key值,只有最后一个key/value有效,前面相同的key/value会被覆盖.这就是字典dict所谓的唯一性.

在python开发过程中,对于字典使用最多的莫过于增删改查以及遍历,下面我们一一讲解:

一.字典dict增加数据

如果想要在字典中添加数据,直接赋值就可以,比较简单,跟上示例代码演示一波:

dict1 = dict() # 定义一个空字典

print(dict1) # 输出一个空的字典

dict1["name"] = "猿说python" # 添加键值对 "name":"猿说python" 到 dict1

dict1["url"] = "shuopython.com" # 添加键值对 "url":"shuopython.com" 到 dict1

print(len(dict1)) # 获取字典键值对数量

print(dict1) # 输出整个字典

输出结果:

{}

2

{'name': '猿说python', 'url': 'shuopython.com'}

二.字典dict删除数据

字典是无序的,每个键值对没有对应的索引值,这也是字典与字符串/列表/元祖的区别。删除字典中的数据,需要根据键值对中的key值来删除对应的键值对,删除使用 del关键字,实例代码如下:

dict1 = {"name":"zhangsan","age":38,"sing_dog":True} # 定义一个字典

print(dict1) # 输出删除之前的字典

# 删除key等于"name"对应的键值对

del dict1["name"]

print(dict1)

# 删除key等于"age"对应的键值对

del dict1["age"]

print(dict1)

# 删除key等于"sing_dog"对应的键值对

del dict1["sing_dog"]

print(dict1)

输出结果:

{'name': 'zhangsan', 'age': 38, 'sing_dog': True}

{'age': 38, 'sing_dog': True}

{'sing_dog': True}

{}

三.字典dict修改数据

字典是无序的,每个键值对没有对应的索引值,这也是字典与字符串/列表/元祖的区别。修改字典中的键值对数据,操作和删除数据一样,直接根据键值对中的key值操作即可,实例代码如下:

dict1 = {"name":"zhangsan","age":38,"sing_dog":True} # 定义一个字典

print(dict1) # 输出字典

# 修改key等于"name"对应的value

dict1["name"] = "隔壁老王"

print(dict1) # 输出字典

# 修改key等于"age"对应的value

dict1["age"] = 18

print(dict1) # 输出字典

# 修改key等于"sing_dog"对应的value

dict1["sing_dog"] = False

print(dict1) # 输出字典

输出结果:

{'name': 'zhangsan', 'age': 38, 'sing_dog': True}

{'name': '隔壁老王', 'age': 38, 'sing_dog': True}

{'name': '隔壁老王', 'age': 18, 'sing_dog': True}

{'name': '隔壁老王', 'age': 18, 'sing_dog': False}

四.字典dict查询数据

字典是无序的,每个键值对没有对应的索引值,这也是字典与字符串/列表/元祖的区别。查询字典中的键值对数据,操作和删除数据/修改数据一样,直接根据键值对中的key值操作即可,实例代码如下:

dict1 = {"name":"zhangsan","age":38,"sing_dog":True} # 定义一个字典

print(dict1) # 输出字典

# 查询key等于"name"对应的value

print(dict1["name"])

# 查询key等于"age"对应的value

print(dict1["age"])

# 查询key等于"sing_dog"对应的value

print(dict1["sing_dog"])

输出结果:

{'name': 'zhangsan', 'age': 38, 'sing_dog': True}

zhangsan

38

True

五.字典dict常用函数

1.把两个字典合并到一个字典,使用函数update()将一个字典添加到另外一个字典的末尾;

2.清空字典,使用函数clear()清空字典;

示例代码如下:

dict1 = {"name":"zhangsan","age":38} # 定义一个字典

print(dict1) # 输出字典

dict2 = {"sing_dog":True} # 定义一个字典

print(dict2)

print("***"*20) # 小窍门:直接答应60个*

# update()函数:将一个字典添加到另外一个字典的末尾

dict1.update(dict2)

print(dict1) # 输出字典

print("***"*20) # 小窍门:直接答应60个*

# 情况字典dict1

dict1.clear()

print(dict1) # 空字典

# 情况字典dict2

dict2.clear()

print(dict2) # 空字典

输出效果:

{'name': 'zhangsan', 'age': 38}

{'sing_dog': True}

************************************************************

{'name': 'zhangsan', 'age': 38, 'sing_dog': True}

************************************************************

{}

{}

六.字典dict遍历

1.使用dict.items()方法遍历字典,该方法的返回值是一个元组,等价于遍历元组,示例代码如下:

dict1 = {"name":"zhangsan","age":38,"sing_dog":True,"height":"155cm"} # 定义一个字典

print(dict1) # 输出字典

print("***"*20) # 小窍门:直接答应60个*

# dict.items()方法,返回元组数据,类似遍历元组操作

for x in dict1.items():

print(x,type(x))

print("***" * 20) # 小窍门:直接答应60个*

# dict.items()方法经典写法,直接获取key/values

for x,y in dict1.items():

print(x,y)

输出结果:

{'name': 'zhangsan', 'age': 38, 'sing_dog': True, 'height': '155cm'}

************************************************************

('name', 'zhangsan')

('age', 38)

('sing_dog', True)

('height', '155cm')

************************************************************

name zhangsan

age 38

sing_dog True

height 155cm

2.根据字典中key或者value遍历字典,代码如下:

dict1 = {"name":"zhangsan","age":38,"sing_dog":True,"height":"155cm"} # 定义一个字典

print(dict1) # 输出字典

print("***"*20) # 小窍门:直接答应60个*

# 方法一:根据key值遍历

for key in dict1.keys():

print(key ,dict1[key]) # dict1[key] 等价键值对中key对应的value

print("***"*20) # 小窍门:直接答应60个*

# 方法二:根据value值遍历

for value in dict1.values():

print(value )

输出结果:

{'name': 'zhangsan', 'age': 38, 'sing_dog': True, 'height': '155cm'}

************************************************************

name zhangsan

age 38

sing_dog True

height 155cm

************************************************************

zhangsan

38

True

155cm

timg-1-1.jpg

七.重点总结

1.注意字典的特点

2.注意字典/字符串/列表/元组的区别

3.注意字典的遍历方式

4.注意字典/字符串/列表/元组之间的相互转换

猜你喜欢:

技术交流、商务合作请直接联系博主

扫码或搜索:猿说python

2019_09_16_2138492599-300x300.png

猿说python

微信公众号 扫一扫关注

赞赏

微信.png微信赞赏支付宝-1.png支付宝赞赏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值