Python 从入门到实战8(字典)

2024-09-06 07:12
文章标签 python 实战 入门 字典

本文主要是介绍Python 从入门到实战8(字典),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我们的目标是:通过这一套资料学习下来,通过熟练掌握python基础,然后结合经典实例、实践相结合,使我们完全掌握python,并做到独立完成项目开发的能力。

      上篇文章我们通过举例学习了python 中元组的定义及相关操作。今天详细讲述字典的定义及相关的操作,也是经常使用到的。

1、字典的定义

字典是由{}括住的,内容以“键-值对”的形式存储的无序序列。

字典的主要特点如下:

  1. 字典是通过键来读取的,不是像列表那样使用索引读取;
  2. 字典是无序的,各项是从左到右随机排序的,保存在字典中的项没有特定的顺序;
  3. 字典是可变的,可以进行嵌套;
  4. 字典中的键必须是唯一的。不允许同一个键出现两次;
  5. 字典中的键必须不可变,所以可以使用数字、字符串、或者元组来作为键,不可使用列表。

2、字典的创建

1)使用定义创建字典

使用定义的方法创建字典,语法如下:

 dictionary_name = {“key1”:”value1”, “key2”:”value2”, “key3”:”value3”,…, “keyn”:”valuen”}

参数说明:dictionary_name  为字典的名称

“key1”:”value1”  :为键-值

举例说明:

dictionary_name = {"username":"张三","sex":"男","address":"北京天安城楼"}
print(dictionary_name)

输出结果:

创建空子典:

dictionary_emp = {}
print(dictionary_emp)

输出:{}

2)通过映射函数创建字典

具体的语法参考:dictionary_name = dict(zip(list1,list2))

参数说明:zip() 函数用于将多个列表或者元组对应位置的元素组合为元组。

List1:表示一个列表,用于指定要生成字典的键

List2: 表示一个列表,用于指定要生成字典的值

举例说明:例如家庭成员分别对应的年龄

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old)) #通过dict(zip()) 来创建字典
print(dictionary_family)

输出结果:

3)通过给定的键-值对 创建字典

语法格式:dictionary_name = dict(key 1 =value 1, key 2=value 2, key 3=value 3,…key n=value n)

就是dict(键=值,….),比较简单,我们直接举例说明。

dict_name = dict(爸爸=40,妈妈=43,哥哥=12)   #注意,不要写成了“爸爸”
print(dict_name)

输出结果如下:

{'爸爸': 40, '妈妈': 43, '哥哥': 12}

另外,还可以使用dict 对象的fromkeys() 方法创建值为空的字典。

参考:dict_name = dict. Fromkeys(list1)   #创建list1为键,值为空的字典

举个例子:

family = ["爸爸","妈妈","哥哥","姐姐","小米"]
dict_name_f = dict.fromkeys(family)
print(dict_name_f)

输出结果:

{'爸爸': None, '妈妈': None, '哥哥': None, '姐姐': None, '小米': None}

3、字典的删除和清空

删除字典:del dict_name     #删除整个字典

清空字典:dict_name.clear    #删除字典中全部元素

比较简单,大家有个印象就好。

4、访问字典的操作

1)输出整个字典

Print(dict_name)

这个比较简单,前面一直在使用了。

2)通过键访问字典

{'爸爸': 40, '妈妈': 43, '哥哥': 12, '姐姐': 11, '小米': 5}

假如上面的字典,对应的家庭成员相应的年龄,想要获取小米的年龄

对应代码:Dict[对应的键]

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
print(dictionary_family["小米"])

输出:

另外,还可以使用字典对象的get()方法获取指定键的值

语法格式:dict_name.get(key[,default])

参数说明:key  是指定的键,default 是可选项,用于当指定的键不存在时,返回一个默认值,如果省略返回None

举个小栗子:

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
print(dictionary_family.get("小米"))
print(dictionary_family.get("弟弟"))
print(dictionary_family.get("弟弟","字典里没有这个人"))

输出结果:

5、遍历字典

1)使用字典item()方法访问字典

使用方法:dict_name.items()

Item()方法的返回值是可遍历的“键-值对”元组列表。输出字典全部“键-值对”方法:

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
for item in dictionary_family.items():
    print(item)

输出:

2)循环输出键-值

分别输出key和value:

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
for key,value in dictionary_family.items():
    print(key,"的年龄是:",value)

输出如下;

6字典中添加元素

添加元素方法:dict_name [key] = value

比较容易理解,直接举例:家庭的字典添加了妹妹

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
dictionary_family ["妹妹"] = 3
print(dictionary_family)

7、字典里修改元素

字典的键不能重复,直接添加元素,但是键和已有相同就会覆盖对应键的值,从而来完成修改:

将上面小米修改为8岁:

family_name = ["爸爸","妈妈","哥哥","姐姐","小米"]
years_old = [40,43,12,11,5]
dictionary_family = dict(zip(family_name,years_old))
print(dictionary_family)
dictionary_family ["小米"] = 8

8、删除字典中元素

语法:  del dict_name[key]

如:删除小米这个成员信息

9、字典推导式

使用字典的推导式可以快速的生成一个字典。例如:我们生成包含5个随机数的字典,

其中字典的键使用数字表示:

import random
random_dict = {i:random.randint(100,1000) for i in range(10,15)}
print(random_dict)

输出:

{10: 177, 11: 819, 12: 889, 13: 622, 14: 532}

今天先写到这里了,每天进步一点点。今天你加油了吗!

这篇关于Python 从入门到实战8(字典)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141351

相关文章

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

利用Python打造一个Excel记账模板

《利用Python打造一个Excel记账模板》这篇文章主要为大家详细介绍了如何使用Python打造一个超实用的Excel记账模板,可以帮助大家高效管理财务,迈向财富自由之路,感兴趣的小伙伴快跟随小编一... 目录设置预算百分比超支标红预警记账模板功能介绍基础记账预算管理可视化分析摸鱼时间理财法碎片时间利用财

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

利用python实现对excel文件进行加密

《利用python实现对excel文件进行加密》由于文件内容的私密性,需要对Excel文件进行加密,保护文件以免给第三方看到,本文将以Python语言为例,和大家讲讲如何对Excel文件进行加密,感兴... 目录前言方法一:使用pywin32库(仅限Windows)方法二:使用msoffcrypto-too

使用Python实现矢量路径的压缩、解压与可视化

《使用Python实现矢量路径的压缩、解压与可视化》在图形设计和Web开发中,矢量路径数据的高效存储与传输至关重要,本文将通过一个Python示例,展示如何将复杂的矢量路径命令序列压缩为JSON格式,... 目录引言核心功能概述1. 路径命令解析2. 路径数据压缩3. 路径数据解压4. 可视化代码实现详解1

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.

Python装饰器之类装饰器详解

《Python装饰器之类装饰器详解》本文将详细介绍Python中类装饰器的概念、使用方法以及应用场景,并通过一个综合详细的例子展示如何使用类装饰器,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. 引言2. 装饰器的基本概念2.1. 函数装饰器复习2.2 类装饰器的定义和使用3. 类装饰