字典

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

单纯的字典

在Python中,字典用放在花括号{} 中的一系列键—值对表示

  • alien_0 = {'color': 'green', 'points': 5}
访问字典中的值
alien_0 = {'color': 'green'}
print(alien_0['color']) > green
添加键值对

字典是种动态结构,可以任意添加键值对

alien_0 = {'color': 'green', 'points': 5}
print(alien_0)
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)
> {'color': 'green', 'points': 5}
{'color': 'green', 'points': 5, 'y_position': 25, 'x_position': 0}
alien_0 = {}
alien_0['color'] = 'green'
alien_0['points'] = 5 print(alien_0)
print(alien_0)
> {'color': 'green', 'points': 5}
修改字典中的值
alien_0 = {'color': 'green'}
print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + "."
>The alien is green.
>The alien is now yellow.
删除键值对

del(key)语句删除键值对

  alien_0 = {'color': 'green', 'points': 5}
print(alien_0)
del alien_0['points']
print(alien_0)
> {'color': 'green', 'points': 5}
> {'color': 'green'}
遍历字典

同样是用for循环遍历字典

遍历字典中的key

可以用.keys()也可以省略

demo1:

user = {
'user_0': 'bob',
'user_1': 'nike',
'user_2': 'john'
}
for key in user:
print(key)
>
user_0
user_1
user_2

demo2:

user = {
'user_0': 'bob',
'user_1': 'nike',
'user_2': 'john'
}
for key in user.keys():
print(key)
>
user_0
user_1
user_2
用items()来遍历键和值
user = {
'user_0': 'bob',
'user_1': 'nike',
'user_2': 'john'
}
for key, value in user.items():
print(key)
print(value)
>
user_0
bob
user_1
nike
user_2
john
遍历字典中的值

demo1:

用items()可以遍历整个字典,也可以单独遍历值

user = {
'user_0': 'bob',
'user_1': 'nike',
'user_2': 'john'
}
for key, value in user.items():
print(value)
>
bob
nike
john

demo2:

可以用values()方法

user = {
'user_0': 'bob',
'user_1': 'nike',
'user_2': 'john'
}
for value in user.values():
print(value)
>
bob
nike
john
嵌套
字典列表

demo1:

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)
>
{'color': 'green', 'points': 5}
{'color': 'yellow', 'points': 10}
{'color': 'red', 'points': 15}

demo2:

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['color'])
>
green
yellow
red
在字典中储存字典

demo1:

school = {
'class1': {
'student1': 'bob',
'student2': 'mosh',
'student3': 'mike'
},
'class2': {
'student1': 'john',
'student2': 'dive',
'student3': 'pip'
}
}
for classes, students in school.items():
print(classes)
print(':')
print(students)
>
class1
:
{'student1': 'bob', 'student2': 'mosh', 'student3': 'mike'}
class2
:
{'student1': 'john', 'student2': 'dive', 'student3': 'pip'}

demo2:

school = {
'class1': {
'student1': 'bob',
'student2': 'mosh',
'student3': 'mike'
},
'class2': {
'student1': 'john',
'student2': 'dive',
'student3': 'pip'
}
}
for students in school.values():
students['student1'] = 'dadaa'

python学习笔记(三)---字典的更多相关文章

  1. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  2. Python 学习笔记三

    笔记三:函数 笔记二已取消置顶链接地址:http://www.cnblogs.com/dzzy/p/5289186.html 函数的作用: 給代码段命名,就像变量給数字命名一样 可以接收参数,像arg ...

  3. python学习笔记三--字典

    一.字典: 1. 不是序列,是一种映射, 键 :值的映射关系. 2. 没有顺序和位置的概念,只是把值存到对应的键里面. 3. 通过健而不是通过偏移量来读取 4. 任意对象的无序集合 5. 可变长,异构 ...

  4. python学习笔记(三)、字典

    字典是一种映射类型的数据类型.辣么什么是映射呢?如果看过<数据结构与算法>这一本书的小伙伴应该有印象(我也只是大学学习过,嘻嘻). 映射:就是将两个集合一 一对应起来,通过集合a的值,集合 ...

  5. python学习笔记(三)-列表&字典

    列表: 一.列表操作"""Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.比如,列出班里所有同学的名字,就可以用一 ...

  6. python学习笔记三--字典的使用

    一.基本使用: 1. 赋值:{key:value} 1.1 与列表相同处:会改变索引(键)相关联的值的改变 1.2 与列表不同处:不用考虑值的长度,而列表是有序的需要考虑末尾偏移量,超过末尾偏移量的会 ...

  7. python 学习笔记(三)根据字典中值的大小对字典中的项排序

    字典的元素是成键值对出现的,直接对字典使用sorted() 排序,它是根据字典的键的ASCII编码顺序进行排序,要想让字典根据值的大小来排序,可以有两种方法来实现: 一.利用zip函数将字典数据转化为 ...

  8. 【Python学习笔记】字典操作

    字典dict是Python中唯一内置的映射类型,由键值对组成,字典是无序的.字典的键必须是不变对象,如字符串.数字.元组等,而包含可变对象的列表.字典和元组则不能作为键.这里可变和不可变的意思是指这个 ...

  9. webdriver(python) 学习笔记三

    知识点:简单的对象定位 对象的定位应该是自动化测试的核心,要想操作一个对象,首先应该识别这个对象.一个对象就是一个人一样,他会有各种的特征(属性),如比我们可以通过一个人的身份证号,姓名,或者他住在哪 ...

随机推荐

  1. [leetcode] 树 -Ⅰ

    均为 Simple 难度的水题. 二叉树的中序遍历 题目[94]:给定一个二叉树,返回它的中序 遍历. 解题思路:Too simple. class Solution { public: vector ...

  2. javascript中的符号 == 和 === 的区别

    ==  表示相等 即仅仅比较两边变量的数值是否相等. 相等运算符隐藏的类型转换,会带来一些违反直觉的结果. 这就是为什么建议尽量不要使用相等运算符. 至于使用相等运算符会不会对后续代码造成意外影响,答 ...

  3. Python学习-第五节:面向对象

    概念: 核心是“过程”二字,“过程”指的是解决问题的步骤,即先干什么再干什么......,基于面向过程设计程序就好比在设计一条流水线,是一种机械式的思维方式.若程序一开始是要着手解决一个大的问题,面向 ...

  4. 从 Linux 操作系统谈谈 IO 模型(终)

    Linux 为什么要区分内核空间与用户空间? Linux 操作系统的 IO 模型有哪几种?有啥区别? 常说的阻塞现象,到底是咋回事? 网络编程研发时,那块到底耗时最多,代码是否还有优化空间? 前几期的 ...

  5. Vulnhub FristiLeaks靶机渗透

    VM上配置 VMware users will need to manually edit the VM's MAC address to: 08:00:27:A5:A6:76 VM上选择本靶机,编辑 ...

  6. Java第十二天,权限修饰符

    Java当中权限修饰符共有四种.分别是public.protected.(default).private. 注:YSE代表可访问,NO代表不可访问.   同一个类 同一个包,非继承 不同的包,有继承 ...

  7. scala_spark实践1

    /** * scala模型的main(args:Array[String])是业务执行入口 * org.apache.spark.{SparkConf, SparkContext} * val spa ...

  8. JNDI数据源的配置及使用 (2010-11-21 21:16:43)转载▼

    JNDI数据源的配置及使用 (2010-11-21 21:16:43)转载▼ 标签: 杂谈 分类: 数据库 数据源的作用 JDBC操作的步骤: 1. 加载驱动程序 2. 连接数据库 3. 操作数据库 ...

  9. 一个不错的博客-涉及el 、jstl、log4j 入门等

    http://www.cnblogs.com/Fskjb/category/198224.html

  10. 【漏洞通告】Linux Kernel 信息泄漏&权限提升漏洞(CVE-2020-8835)通告

    0x01漏洞简介: 3月31日, 选手Manfred Paul 在Pwn2Own比赛上用于演示Linux内核权限提升的漏洞被CVE收录,漏洞编号为CVE-2020-8835.此漏洞由于bpf验证系统在 ...