Python编程:字典
1.一个简单的字典
alien_0 = {'colors': 'green','points':5}
print(alien_0['colors'])
print(alien_0['points'])
2.使用字典
在Python中,字典是一系列键值对,每个键都与一个值相关联,你可以通过访问键来访问相关联的值。与键相关联的值可以是字符串、数字、列表、字典等等。
在Python中,字典用放在花括号({})里的一系列键值对表示。键值对是一系列相关联的值,指定键时,会返回相关的值。键与值之间用冒号(:)隔开,键值对之间用逗号(,)隔开。
2.1访问字典中的值
要获取与键相关的值,可以依次指定字典名和放在方括号里的键名。
alien_0 = {'colors': 'green','points':5}
new_points = aliens_0['points']
print(f"You just earnd {new_points} points!")
2.2添加键值对
字典是一种动态结构,可以随时在其中添加键值。要添加键值,可以依次指定字典名、用方括号括起来的键名以及相关联的值。
alien_0 = {'colors': 'green','points':5}
print(alien_0)alien_0['x_poistions'] = 0
alien_0['y_poistions'] = 25
print(alien_0)
注意:字典中的排列顺序与定义是的顺序是一致的。
2.3先创建一个空字典
有时候,我们需要动态地在字典中不断添加键值对,这是,我们可以用花括号({})先创建一个空字典,再分行添加各个键值对。
alien_0 = {}
alien_0['colors'] = 'green'
alien_0['points'] = 5
print(alien_0)
2.4修改字典中的值
要修改字典中的值,可以依次指定字典名、用方括号括起来的键名以及要关联的新值。
alien_0{'colors':'green'}
alien_0['colors'] = 'yellow'
2.5删除键值对
对于字典中不需要的信息,我们可以使用del语句将相应的键值对彻底删除,使用del语句时,必须指定字典名和要删除的键。
alien_0 = {'colors': 'green','points':5}
del alien_0['colors']
注意:删除的键值会永远消失。
2.6由类似对象组成的字典
你可以使用字典来存储众多对象的同一种信息。当你确定要使用多行来定义字典时,要在输入的左花括号({)后按回车键另起一行,然后缩进4个空格,输入指定的第一个键值对,在其后面加一个逗号,在另起一行重复上述操作。最后,另起一行,输入右花括号(})即可。
favorite_languages = {'jens': 'python','sarah': 'c','phil': 'python',
}
2.7使用get()来访问值
使用方法get()在指定的键不存在时,可以返回一个默认值。
方法get()的第一个参数用于指定键,必不可少,第二个参数为指定的键不存在时,要返回的值,是可选的,如果没有设定第二个参数,返回的是None。
alien_0 = {'colors': 'green','points':5}
point_value = alien_0.get('points','No point value.')
一般在指定的键可能不存在时,使用方法get()。
3.遍历字典
字典可用于多种方式的储存,因此有多种遍历方式,可遍历字典中的所有键值对、键或值。
3.1遍历所有的键值对
使用for循环可以遍历整个字典,需要使用方法items(),以及需要声明两个变量用于存储键值对中的键和值。
famliy ={'first_name': 'Xu','age': '22','city': 'QingDao',
}
for key,value in famliy.items():print(f"\nKey:{key}")print(f"\nValue:{value}")
3.2遍历字典中的所有键
要遍历字典中的所有键时,方法keys()很有用
favorite_languages = {'jens': 'python','sarah': 'c','phil': 'python',
}
friends = ['phil']
for name in favorite_languages.keys():print(name.title())if name in friends:language = favorite_languages[name].title()print('I see you')
方法key()并非只用于遍历,它返回的是一个列表,其中包含字典中的所有键。
3.3按特定顺序遍历字典中的所有键
要以特定的顺序返回元素,一种方法是在for循环对返回的键进行排序。因此,可以使用函数sorted()来获取以特定顺序排列的键列表的副本。
favorite_languages = {'jens': 'python','sarah': 'c','phil': 'python',
}for name in sorted(favorite_languages.keys()):print(name.title())
3.4遍历字典中的所有值
如果对字典中的值很感兴趣,可以使用方法values()来返回一个值列表,不包含所有的键。
favorite_languages = {'jens': 'python','sarah': 'c','phil': 'python',
}for language in favorite_languages.values():print(language.title())
字典中的值可能是重复项,所以,为剔除重复项,可以使用集合(set),集合中的每个元素都是独一无二的。
favorite_languages = {'jens': 'python','sarah': 'c','phil': 'python',
}for language in set(favorite_languages.values()):print(language.title())
注意:可以使用花括号({})直接创建集合,并在其中用逗号分隔元素。
4.嵌套
4.1字典列表
创建一个列表,列表中的每个元素都代表一个字典,即在列表中嵌套字典。
alien_0={'color':'green','points':5}
alien_1={'color':'yellow','points':10}
alien_2={'color':'red','points':15}
aliens=[alien_0,alien_1,alien_2]
for alien in aliens:print(alien)
如果列表中要包含的字典数有很多,可以使用以下方法,即先创建一个空列表,再利用.append()将值附加到列表末尾。
aliens=[]
for alien_number in range(30):new_alien = {'color':'green','points':5,'speed':'slow'}aliens.append(new_alien)
for alien in aliens[:5]:print(alien)
print(f"Total number of aliens:{len(aliens)}")
当然,我们也可以使用for循环和if语句来修改列表中某些字典的值。
aliens=[]for alien_number in range(30):new_alien = {'color':'green','points':5,'speed':'slow'}aliens.append(new_alien)for alien in aliens[:3]:if alien['color'] == 'green':alien['color']='yellow'alien['speed']='medium'alien['point']=10for alien in aliens[:5]:print(alien)
print(f"Total number of aliens:{len(aliens)}")
4.2在字典中存储列表
有时,我们需要在字典中将一个键关联到多个值时,就可以考略在字典中嵌套列表。
pizza = {'crust':'thick','toppings':['mushrooms','extra chesse'],
}
for topping in pizza['toppings']:print("\t"+topping)
4.3在字典中嵌套字典
当我们需要在字典中嵌套字典是,代码可能变得复杂起来。
user = {'Bod': {'first':'albert','last':'einstein','location':'princetion',}
}
for username,user_info in user.items():print(f"\nUsername:{username}")location=user_info['location']print(f"\tLocation:{location.title()}")
注意:这样做时,一般要求用户具有相同的结构。
Python编程:字典相关推荐
- Python编程 字典创建
作者简介:一名在校计算机学生.每天分享Python的学习经验.和学习笔记. 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 目录 前言 一.字典 1.字典介绍 (了解) 2.字典创 ...
- python编程字典100例_python中字典(Dictionary)用法实例详解
本文实例讲述了python中字典(Dictionary)用法.分享给大家供大家参考.具体分析如下: 字典(Dictionary)是一种映射结构的数据类型,由无序的"键-值对"组成. ...
- python编程字典数据库_python基础数据类型之字典、集合
哈啰!大家好,今天是初五了,牛年接财神的好日子,懂得都懂.祝@所有人2021年,事事顺利,牛气冲天,福利满满,财运亨通,步步高升,学业进步! 那么,这次介绍的是鼎鼎大名的字典,其以其操作的灵活性.操作 ...
- python编程单词排序_Python编程20:字典的遍历和排序
#少儿编程# 字典的遍历 1)通过遍历key来遍历字典 所谓遍历,简单点就说就是所有的值都访问一遍.Python字典的遍历有几种方式: 遍历key有两种方式.一种如图1中的红框内的代码: 图1 for ...
- 3.【Python编程】字典Dict相关知识及基本操作
目录 3.[Python编程]字典Dict相关知识及基本操作 3.1 字典的创建 3.2 访问字典里的值 3.3 修改字典 3.4 删除字典元素 3.5 字典的常用函数 3.[Python编程]字典D ...
- Python编程:从入门到实践第六章读书笔记6.3遍历字典
Python编程:从入门到实践第六章读书笔记6.3遍历字典 #coding:gbk#6.3.1遍历所有的键-值对 user_0 = {'username': 'efermi','first': 'en ...
- 《python编程:从入门到实践的》第六章:字典的例题代码
在Python中,字典是一系列键-值对.每个键都与一个值相关联,你可以使用键来访问与之 相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将任何Python对 象用作字典中的值. ...
- Python编程基础:实验3——字典及集合的使用
Python编程基础:实验3--字典及集合的使用 文章目录 Python编程基础:实验3--字典及集合的使用 一.前言 二.我的环境 三.实验目的与要求 四.实验任务 1.程序填空 2.程序编程 五. ...
- Python编程对列表中字典元素进行排序的方法详解
@本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 本文实例讲述了Python编程对列表中字典元素进行排序的方法.分享给大家供大家参考,具体如下: 内容目录: 问题起源 对列表中的字 ...
- python编程词典_编程字典-Python自然语言处理
原标题:编程字典-Python自然语言处理 自然语言处理(NLP)是指使用诸如英语之类的自然语言与智能系统通信的AI方法. 当您希望像机器人这样的智能系统按照您的指示执行,当您想要听取基于对话的临床专 ...
最新文章
- java项目怎样强制删除手机缓存_Myeclipse清理项目缓存的几大方法
- 一起谈.NET技术,保护您的 Silverlight 应用程序的安全
- linux 校园网开启wifi共享,Linux/Ubuntu 16.04 使用校园网客户端Dr.com DrClient 有线连网,同时开启WiFi热点...
- boost::mpi::wait_any相关用法的测试程序
- C++模板-Traits
- svn版本库浏览器_在SVN版本库浏览器中直接编辑文件保存后不会弹..._网络编辑_帮考网...
- Docker for windows 容器内网通过独立IP直接访问的方法
- STL应用--SORT自定义排序
- 数据结构与算法之-----链表(List)
- 使用SSH从服务器下载文件
- base64 文件格式判断 图片类型判断 js
- Problem H. Curious (莫比乌斯反演)
- python绘图黄金螺旋_教案-for循环应用之“黄金螺旋-信息技术高中
- excel图片技巧:如何为报表配上节日祝福动画
- 概率论-分布函数(高斯分布、复高斯分布、瑞丽分布、Nakagami-m分布、均匀分布、卡方分布)
- Android版计算器(java实现,包含小数、负数、括号)代码和讲解
- 智慧小区智慧物业管理系统一体化解决方案
- vue中使用Vue-i18n插件实现页面中英文切换详细教程
- php获取QQ音乐直链,微信小程序-获取QQ音乐直链
- 博科光纤交换机初始化配置
热门文章
- hdl四位二进制计数器_用Verilog HDL设计一个4位BCD码计数器
- 2018你那计算机考试新题型,2018年421多省公务员考试判断推理新题型、新趋势
- [软件工程] UML 用例图详解
- 吉首大学2019年程序设计竞赛(重现赛)A:SARS病毒(找规律 or 推公式+欧拉降幂+快速幂)
- 工作缺点和不足及措施_个人工作问题不足20条以及改进措施
- 《自然语言处理简明教程》读书笔记:第十四章 文本数据挖掘
- unity导入Standard Assets出现错误
- 【翻译】 Unity3D VR 教程:1.VR概述
- elasticsearch创建索引模板
- “萝卜快跑”,“快”不起来——百度Robotaxi试乘体验