Python 如何读取字典的所有键-值对
作者:a411178010 发布时间:2021-05-21 10:06:53
标签:Python,字典的键,值对
如果字典中存储了一些值,我想要取出来该怎么操作呢?
1、我要取出字典中所有的键-值对
取出字典中所有的键-值对时,可以使用items()返回一个键值对列表,并配合for循环进行遍历
#创建一个存储一个学生的信息,通过遍历可以取出所有信息
student={'name':'xiaoming','age':11,'school':'tsinghua'}
for key,value in student.items():
print(key+':'+str(value))
输出:
age:11
name:xiaoming
school:tsinghua
注意:
遍历出的返回值输出和存储的顺序不一样,输出顺序每次都会变化
在for循环中key和value两个变量需要使用逗号‘,'隔开
2、我要取出字典中的键
可以使用keys()方法取出字典中的键,不取对应的值
#创建一个人和对应喜欢水果的字典
people={'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimie':'peach'}
for name in people.keys():
print(name)
输出:(顺序是随机的)
hanmeimie
gaolan
fanming
lifei
注意:keys()方法返回的是列表,要用列表的思维考虑问题
keys()返回的值顺序是不确定的,如果想按序排列,可以使用sorted()进行排序
#创建一个人和对应喜欢水果的字典
people={'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimie':'peach'}
for name in sorted(people.keys()):
print(name)
输出:
fanming
gaolan
hanmeimie
lifei
3、我要取出字典中的值
可以使用values()取出字典中的值
#创建一个人和对应喜欢水果的字典
people={'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimie':'peach'}
for fruit in people.values():
print(fruit)
输出:
peach
banana
peach
apple
注意,有没有看到上边输出的结果中有重复值,如果我想去除重复值怎么办呢,可以使用集合set() 去除重复值
#创建一个人和对应喜欢水果的字典
people={'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimie':'peach'}
for fruit in set(people.values()):
print(fruit)
输出:
apple
peach
banana
练习
创建一个人员名单,有些人在水果字典中(承接上边的喜欢水果字典),有些人不在其中,对于已明确喜欢水果的,询问是否还需要其它的水果,对于未明确喜欢水果的,邀请他说出他喜欢的一种水果。
#创建一个人和对应喜欢水果的字典
people_fruit={'lifei':'apple','fanming':'peach','gaolan':'banana','hanmeimei':'peach'}
people=['lilei','caiming','hanmeimei','gaolan']
for name in people:
if name in people_fruit.keys():
print('您还需要其他的水果吗?')
elif name not in people_fruit.keys():
print('你能告诉我您喜欢的一种水果吗?')
输出:
你能告诉我您喜欢的一种水果吗?
你能告诉我您喜欢的一种水果吗?
您还需要其他的水果吗?
您还需要其他的水果吗?
来源:https://blog.csdn.net/a411178010/article/details/78548168


猜你喜欢
- Python Socket模块中包含一些有用IP转换函数,说明如下:socket.ntohl(x) // 类似于
- 以下就重复记录删除的问题作一阐述。 有两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如N
- 本文实例讲述了C#实现按数据库邮件列表发送邮件的方法。分享给大家供大家参考。具体实现方法如下:using System;using Syst
- uni-app自定义导航栏右侧做增加按钮并跳转链接uni-app 在页面上的导航栏右侧做一个增加的图标 并实现跳转1. 先看效果图2. 实现
- 前言最近在重构一个复选框组件,原型是select2这个jQuery插件, 有兴趣的可以去搜下,封装的很好,但是并不能满足业务所有需求,最要命
- 一般要用到递归,就要判断对象是否和父类型是否一样这里演示简单的对象递归,还有数组递归类似。var obj = { a:{w:1,y:2,x:
- 目录业务需求:方案一:vuex-persistedstate方案二:vuex-persist总结业务需求:在基于vue开发SPA项目时,为了
- 背景Translation插件在mac上idea能够搜索到,但是在windows上却搜索不到解决勾选上成功了。来源:https://blog
- pandas 读取各种格式文件:前置工序: import pandas as pdcsv 文件读取中文错误处理: utf-8 codec c
- 前言:由于ES6到ES7增加了很多新的语法,新特性的出现使得大家都希望通过新语法来提升自身的开发效率,但在之前的最新的node可能也没有百分
- 如下所示:import osimport cv2import sysimport numpy as nppath = "F:\\I
- 前言数据来源:population_data.json,先看一下数据长啥样[ { "Coun
- 在数据生产应用部门,取数分析是一个很常见的需求,实际上业务人员需求时刻变化,最高效的方式是让业务部门自己来取,减少不必要的重复劳动,一般情况
- 在工作中有时候会给图上添加文字,常用的是PS工具,不过我想通过代码的方式来给图片添加文字。需要使用的Python的图像库:PIL.更加详细的
- 1 什么是嵌套循环所谓嵌套循环就是一个外循环的主体部分是一个内循环。内循环或外循环可以是任何类型,例如 while 循环或 for 循环。
- 前言:话说,我一直没能理解美工究竟是什么(这是一篇投稿)。因为要求确实很多。目前,我只能理解成,是前端开发+页面设计+用户体验设计的全能手。
- 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想
- 任务1、编写程序实现乐手弹奏乐器多态class Instrument(): def make_sound(self
- 如何显示一个文本文件?完整显示文本文件的代码如下: Write(STRING) WriteLine(STRING) WriteBlan
- 一.docx模块Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把