- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Python 如何读取字典的所有键-值对由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
如果字典中存储了一些值,我想要取出来该怎么操作呢?
取出字典中所有的键-值对时,可以使用items()返回一个键值对列表,并配合for循环进行遍历 。
1
2
3
4
|
#创建一个存储一个学生的信息,通过遍历可以取出所有信息
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两个变量需要使用逗号‘,'隔开 。
可以使用keys()方法取出字典中的键,不取对应的值 。
1
2
3
4
|
#创建一个人和对应喜欢水果的字典
people
=
{
'lifei'
:
'apple'
,
'fanming'
:
'peach'
,
'gaolan'
:
'banana'
,
'hanmeimie'
:
'peach'
}
for
name
in
people.keys():
print
(name)
|
输出:(顺序是随机的) 。
hanmeimie 。
gaolan 。
fanming 。
lifei 。
注意:keys()方法返回的是列表,要用列表的思维考虑问题 。
keys()返回的值顺序是不确定的,如果想按序排列,可以使用sorted()进行排序 。
1
2
3
4
|
#创建一个人和对应喜欢水果的字典
people
=
{
'lifei'
:
'apple'
,
'fanming'
:
'peach'
,
'gaolan'
:
'banana'
,
'hanmeimie'
:
'peach'
}
for
name
in
sorted
(people.keys()):
print
(name)
|
输出:
fanming 。
gaolan 。
hanmeimie 。
lifei 。
可以使用values()取出字典中的值 。
1
2
3
4
|
#创建一个人和对应喜欢水果的字典
people
=
{
'lifei'
:
'apple'
,
'fanming'
:
'peach'
,
'gaolan'
:
'banana'
,
'hanmeimie'
:
'peach'
}
for
fruit
in
people.values():
print
(fruit)
|
输出:
peach 。
banana 。
peach 。
apple 。
注意,有没有看到上边输出的结果中有重复值,如果我想去除重复值怎么办呢,可以使用集合set() 去除重复值 。
1
2
3
4
|
#创建一个人和对应喜欢水果的字典
people
=
{
'lifei'
:
'apple'
,
'fanming'
:
'peach'
,
'gaolan'
:
'banana'
,
'hanmeimie'
:
'peach'
}
for
fruit
in
set
(people.values()):
print
(fruit)
|
输出:
apple 。
peach 。
banana 。
创建一个人员名单,有些人在水果字典中(承接上边的喜欢水果字典),有些人不在其中,对于已明确喜欢水果的,询问是否还需要其它的水果,对于未明确喜欢水果的,邀请他说出他喜欢的一种水果.
1
2
3
4
5
6
7
8
|
#创建一个人和对应喜欢水果的字典
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
(
'你能告诉我您喜欢的一种水果吗?'
)
|
输出:
你能告诉我您喜欢的一种水果吗?
你能告诉我您喜欢的一种水果吗?
您还需要其他的水果吗?
您还需要其他的水果吗?
一上午好多事,费了好大劲才学完这一节啊 。
1、首先遍历字典所有的键-值对可以使用items() 。
2、只遍历键时可以使用key(),还可以使用sorted()进行排序 。
3、只遍历值时,可以使用values(),还可以使用set()去除值中重复的值 。
补充:python 取出字典的键或者值/如何删除一个字典的键值对/如何遍历字典 。
先定义一个字典并直接进行初始化赋值 。
1
|
my_dict
=
dict
(name
=
"lowman"
, age
=
45
, money
=
998
, hourse
=
None
)
|
key_list = my_dict.keys() 返回的是列表 。
1
2
3
|
my_dict
=
dict
(name
=
"lowman"
, age
=
45
, money
=
998
, hourse
=
None
)
key_list
=
my_dict.keys()
print
(
list
(key_list))
|
输出:
['hourse', 'name', 'age', 'money'] 。
取出字典所有的键,这里其实还有一个方法, 就是使用内置函数set(), 将其转换为集合数据结构. 集合,其实可以理解为只有键的字典
1
2
3
|
item
=
{
"name"
:
"lowman"
,
"age"
:
27
}
data
=
set
(item)
print
(data)
|
输出
{'age', 'name'} 。
注意,这样输出的是集合类型 。
value_list = my_dict.values() 返回的是列表 。
1
2
3
|
my_dict
=
dict
(name
=
"lowman"
, age
=
45
, money
=
998
, hourse
=
None
)
value_list
=
my_dict.values()
print
(
list
(value_list))
|
输出:
[None, 45, 'lowman', 998] 。
注意:在python2环境中这两个方法返回的是列表,但是在python3环境下返回的却是迭代器,如果希望通过下标直接取到需要的元素,可以通过list()方法将其先转化为列表,再进行取值. 。
value = my_dict["key"] 这样取值的话如果没有这个键就会抛出异常 。
这样取值的话如果没有这个键就返回None:value = my_dict.get("key") 。
也可以自定义一个默认值进行返回:value = my_dict.get("key", 默认值) 。
1
2
|
for
item
in
my_dict:
print
(item)
|
输出:
name 。
hourse 。
money 。
age 。
取出的是该字典的键 。
1
2
3
4
|
for
key, value
in
my_dict.items():
print
(key,value)
for
item
in
my_dict.items():
print
(item)
# 这样取值的话,返回的就是一个元组,里面包含两个元素,第一个是键,第二个为值
|
输出:
hourse None 。
money 998 。
age 45 。
name lowman 。
('hourse', None) 。
('money', 998) 。
('age', 45) 。
('name', 'lowman') 。
1
2
|
my_dict
=
{
"name"
:
"lowman"
,
"age"
:
12
}
del
my_dict[
"name"
]
|
这样就把整个键值对给删除掉了 。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我.
原文链接:https://blog.csdn.net/a411178010/article/details/78548168 。
最后此篇关于Python 如何读取字典的所有键-值对的文章就讲到这里了,如果你想了解更多关于Python 如何读取字典的所有键-值对的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我只想国家和资本化的值(value)。 这是我的完整代码: cities = { 'rotterdam': { 'country': 'netherlands',
想更好地了解如何比较对象类型的键。 dicOverall.exists(dic2) 返回 False,而 dicOverall.exists(dic1) 返回 True。我不太确定 .Exists 如
我是编程和 python 的新手,我不知道如何解决这个问题。 my_dict = {'tiger': ['claws', 'sharp teeth', 'four legs', 'stripes'
这个问题已经有答案了: Accessing an object property with a dynamically-computed name (19 个回答) 已关闭 8 年前。 我引用了这篇文
希望有人能帮忙。我正在使用 Python,我希望能够执行以下操作。 我有一组对象(例如形状)和一系列作用于这些对象的命令。命令的格式为命令字符串,后跟可变数量的参数,可以是字符串或整数 例如形状“矩形
我在文件中保存了一本字典。我从 python 交互式 shell 将字典加载到内存中,我的系统监视器显示 python 进程消耗了 4GB。以下命令提供以下输出: size1 = sys.getsiz
如果我运行以下代码: import json foo = [ { "name": "Bob", "occupation": "", "stand
我尝试获取列名及其索引,并将结果保存为数据框或字典: df <- data.frame(a=rnorm(10), b=rnorm(10), c=rnorm(10)) 我该怎么做?谢谢。 column
我正在尝试获取输入,如果字典 logins 有一个与我的输入匹配的键,我想返回该键的值。 logins = { 'admin':'admin', 'turtle':'password1
在 Perl 世界中有一个很棒的东西叫做 CPAN .它是开源 Perl 库的大型存储。 我使用来自 CPAN 的模块,我已经发布了 several distributions myself . 我使
这个问题已经有答案了: Is there a Python dict without values? (3 个回答) 已关闭 3 年前。 我有一个问题,我想跟踪大量值。如果我从未遇到过该值,我将执行操
想知道这是否可能。 我们有一个第 3 方库,其中包含有关用户的识别信息... 与库的主要交互是通过一个以字符串为键的 HashTable,并返回该键的信息对象图。 问题是, key 显然是区分大小写的
我是 .NET 编程的新手。对不起,如果这个问题以前被问过。 我目前正在学习 F#。 Dictionary、Hashtable 和 Map 之间有什么区别?我应该什么时候使用? 我还有一个标题中没有提
我正在尝试使用SVM进行3类分类。为此,我正在SVM培训期间准备词汇表。但是,由于我在SVM预测期间获得随机结果,因此我怀疑我的词汇创建方法中存在一些问题。我创建词汇的代码如下: //Mat trai
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
假设我有一个以下形式的嵌套字典: {'geo': {'bgcolor': 'white','lakecolor': 'white','caxis': {'gridcolor': 'white', 'l
我有一个 java 应用程序,每秒启动和停止数亿个项目(从外部脚本调用)多次。 Input: String key Output: int value 此应用程序的目的是在从未永远改变的Map(约30
我正在尝试找出字典与集合和数组相比的相对优势和功能。 我发现了一篇很棒的文章here但找不到一个简单的表格来比较所有不同的功能。 有人知道吗? 最佳答案 请参阅下表,对集合和字典进行有用的比较。 (该
我想要一个字典,它可以为字典中没有的任何键返回一个指定的值,例如: var dict = new DictWithDefValues("not specified"); dict.Add("bob78
我是 python 新手,目前仍在学习如何处理列表和字典。 我有这两个功能 def food_database(item_name, size_serv, calorie_serv, prot
我是一名优秀的程序员,十分优秀!