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编程:字典相关推荐

  1. Python编程 字典创建

    作者简介:一名在校计算机学生.每天分享Python的学习经验.和学习笔记.   座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.字典 1.字典介绍 (了解) 2.字典创 ...

  2. python编程字典100例_python中字典(Dictionary)用法实例详解

    本文实例讲述了python中字典(Dictionary)用法.分享给大家供大家参考.具体分析如下: 字典(Dictionary)是一种映射结构的数据类型,由无序的"键-值对"组成. ...

  3. python编程字典数据库_python基础数据类型之字典、集合

    哈啰!大家好,今天是初五了,牛年接财神的好日子,懂得都懂.祝@所有人2021年,事事顺利,牛气冲天,福利满满,财运亨通,步步高升,学业进步! 那么,这次介绍的是鼎鼎大名的字典,其以其操作的灵活性.操作 ...

  4. python编程单词排序_Python编程20:字典的遍历和排序

    #少儿编程# 字典的遍历 1)通过遍历key来遍历字典 所谓遍历,简单点就说就是所有的值都访问一遍.Python字典的遍历有几种方式: 遍历key有两种方式.一种如图1中的红框内的代码: 图1 for ...

  5. 3.【Python编程】字典Dict相关知识及基本操作

    目录 3.[Python编程]字典Dict相关知识及基本操作 3.1 字典的创建 3.2 访问字典里的值 3.3 修改字典 3.4 删除字典元素 3.5 字典的常用函数 3.[Python编程]字典D ...

  6. Python编程:从入门到实践第六章读书笔记6.3遍历字典

    Python编程:从入门到实践第六章读书笔记6.3遍历字典 #coding:gbk#6.3.1遍历所有的键-值对 user_0 = {'username': 'efermi','first': 'en ...

  7. 《python编程:从入门到实践的》第六章:字典的例题代码

    在Python中,字典是一系列键-值对.每个键都与一个值相关联,你可以使用键来访问与之 相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将任何Python对 象用作字典中的值. ...

  8. Python编程基础:实验3——字典及集合的使用

    Python编程基础:实验3--字典及集合的使用 文章目录 Python编程基础:实验3--字典及集合的使用 一.前言 二.我的环境 三.实验目的与要求 四.实验任务 1.程序填空 2.程序编程 五. ...

  9. Python编程对列表中字典元素进行排序的方法详解

    @本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 本文实例讲述了Python编程对列表中字典元素进行排序的方法.分享给大家供大家参考,具体如下: 内容目录: 问题起源 对列表中的字 ...

  10. python编程词典_编程字典-Python自然语言处理

    原标题:编程字典-Python自然语言处理 自然语言处理(NLP)是指使用诸如英语之类的自然语言与智能系统通信的AI方法. 当您希望像机器人这样的智能系统按照您的指示执行,当您想要听取基于对话的临床专 ...

最新文章

  1. java项目怎样强制删除手机缓存_Myeclipse清理项目缓存的几大方法
  2. 一起谈.NET技术,保护您的 Silverlight 应用程序的安全
  3. linux 校园网开启wifi共享,Linux/Ubuntu 16.04 使用校园网客户端Dr.com DrClient 有线连网,同时开启WiFi热点...
  4. boost::mpi::wait_any相关用法的测试程序
  5. C++模板-Traits
  6. svn版本库浏览器_在SVN版本库浏览器中直接编辑文件保存后不会弹..._网络编辑_帮考网...
  7. Docker for windows 容器内网通过独立IP直接访问的方法
  8. STL应用--SORT自定义排序
  9. 数据结构与算法之-----链表(List)
  10. 使用SSH从服务器下载文件
  11. base64 文件格式判断 图片类型判断 js
  12. Problem H. Curious (莫比乌斯反演)
  13. python绘图黄金螺旋_教案-for循环应用之“黄金螺旋-信息技术高中
  14. excel图片技巧:如何为报表配上节日祝福动画
  15. 概率论-分布函数(高斯分布、复高斯分布、瑞丽分布、Nakagami-m分布、均匀分布、卡方分布)
  16. Android版计算器(java实现,包含小数、负数、括号)代码和讲解
  17. 智慧小区智慧物业管理系统一体化解决方案
  18. vue中使用Vue-i18n插件实现页面中英文切换详细教程
  19. php获取QQ音乐直链,微信小程序-获取QQ音乐直链
  20. 博科光纤交换机初始化配置

热门文章

  1. hdl四位二进制计数器_用Verilog HDL设计一个4位BCD码计数器
  2. 2018你那计算机考试新题型,2018年421多省公务员考试判断推理新题型、新趋势
  3. [软件工程] UML 用例图详解
  4. 吉首大学2019年程序设计竞赛(重现赛)A:SARS病毒(找规律 or 推公式+欧拉降幂+快速幂)
  5. 工作缺点和不足及措施_个人工作问题不足20条以及改进措施
  6. 《自然语言处理简明教程》读书笔记:第十四章 文本数据挖掘
  7. unity导入Standard Assets出现错误
  8. 【翻译】 Unity3D VR 教程:1.VR概述
  9. elasticsearch创建索引模板
  10. “萝卜快跑”,“快”不起来——百度Robotaxi试乘体验