20190513——python基础(列表、数据类型:字典、列表和字典的异同)
二、python基础(列表、数据类型:字典、列表和字典的异同)
1、列表
1)什么是列表
2)从列表提取单个元素
# 偏移量。列表中的各个元素,好比教室里的某排学生那样,是有序地排列的,也就是说,每个元素都有自己的位置编号(即偏移量)。# 1.偏移量是从0开始的,而非我们习惯的从1开始;2.列表名后加带偏移量的中括号,就能取到相应位置的元素。students = ['小九','小八','小七','小六','小五','小四','小三','老二','老大'] print(students[3])>>>小六
students = ['小九','小八','小七','小六','小五','小四','小三','老二','老大'] print(students[3]) # 提取字典中的第三个元素,从0开始数,往右数第三个元素:“小六” # >>>小六
提取字典元素
3)从列表提取多个元素
# 这种用冒号来截取列表元素的操作叫作切片,顾名思义,就是将列表的某个片段拿出来处理。这种切片的方式可以让我们从列表中取出多个元素。list2 = [5,6,7,8,9] print(list2[:]) # 打印出[5, 6, 7, 8, 9] print(list2[2:]) # 打印出[7, 8, 9] print(list2[:2]) # 打印出[5, 6] print(list2[1:3]) # 打印出[6, 7] print(list2[2:4]) # 打印出[7, 8]# 列表切片口诀:冒号左边空,就要从偏移量为0的元素开始取;右边空,就要取到列表的最后一个元素。后半句:冒号左边数字对应的元素要拿,右边的不动(可再回顾下代码)。
# 偏移量取到的是列表中的元素,而切片则是截取了列表的某部分,所以还是列表 students = ['小九','小八','小七','小六','小五','小四','小三','老二','老大'] print(students[2:4]) print(students[2])>>>['小七', '小六']小七
4)给列表增加/删除元素
增加元素
# 请运行以下代码:报错后,可读一下报错信息,然后将第6行注释掉再运行。 list3 = [1,2] list3.append(3)# 注意格式是:列表名.append()# append后的括号里只能接受一个参数 print(list3) #list3.append(4,5) list3.append([4,5])# append函数并不生成一个新列表,而是让列表末尾新增一个元素。而且,列表长度可变,理论容量无限,所以支持任意的嵌套。 print(list3)>>>[1, 2, 3][1, 2, 3, [4, 5]]
删除元素
students = ['小明','小红','小刚','小美'] del students[1] print(students) >>>['小明', '小刚', '小美']# del语句非常方便,既能删除一个元素,也能一次删除多个元素(原理和切片类似,左取右不取)。
2、字典
1)什么是字典
# 字典和列表有3个地方是一样的:1.有名称;2.要用=赋值;3.用逗号作为元素间的分隔符。 # 而不一样的有两处:1.列表外层用的是中括号[ ],字典的外层是大括号{ };2.列表中的元素是自成一体的,而字典的元素是由一个个键值对构成的,用英文冒号连接。如'小明':95,其中我们把'小明'叫键(key),95叫值(value)。 students = ['小明','小红','小刚'] scores = {'小明':95,'小红':90,'小刚':90} # 唯一的键和对应的值形成的组合,我们就叫做【键值对】,上述字典就有3个【键值对】:'小明':95、'小红':90、'小刚':90# 强调:字典中的键具备唯一性,而值可重复。也就是说字典里不能同时包含两个'小明'的键,但却可以有两个同为90的值。
# 如果不想口算,我们可以用len()函数来得出一个列表或者字典的长度(元素个数),括号里放列表或字典名称。 students = ['小明','小红','小刚'] scores = {'小明':95,'小红':90,'小刚':90} print(len(students)) print(len(scores))>>>33
2)从字典中提取元素
# 字典的索引,和列表通过偏移量来索引不同,字典靠的是键。 scores = {'小明': 95, '小红': 90, '小刚': 90} print(scores['小明']) >>>95 # 这便是从字典中提取对应的值的用法。和列表相似的是要用[ ],不过因为字典没有偏移量,所以在中括号中应该写键的名称,即字典名[字典的键]。
3)给字典增加/删除元素
album = {'周杰伦':'七里香','王力宏':'心中的日月'} del album['周杰伦'] print(album) album['周杰伦'] = '十一月的萧邦' print(album) print(album['周杰伦'])>>> {'王力宏': '心中的日月'} {'王力宏': '心中的日月', '周杰伦': '十一月的萧邦'} 十一月的萧邦# 删除字典里键值对的代码是del语句del 字典名[键],而新增键值对要用到赋值语句字典名[键] = 值。
3、列表和字典的异同
1)不同点:
- 列表有序,要用偏移量定位;字典无序,便通过唯一的键来取值。
- 列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表。我们来看看代码:
# 如果==左右两边相等,值为True,不相等则为False。 print(1 == 1) # 1等于1,所以值为True print(1 == 2) # 1不等于2,所以为False students1 = ['小明','小红','小刚'] students2 = ['小刚','小明','小红'] print(students1 == students2) scores1 = {'小明':95,'小红':90,'小刚':100} scores2 = {'小刚':100,'小明':95,'小红':90} print(scores1 == scores2)>>> True False False True
2)共同点:
- 在列表和字典中,如果要修改元素,都可用赋值语句来完成。看一下代码:
list1 = ['小明','小红','小刚','小美'] list1[1] = '小蓝' print(list1) dict1 = {'小明':'男'} dict1['小明'] = '女' print(dict1)>>>['小明', '小蓝', '小刚', '小美'] {'小明': '女'}
- 支持任意嵌套。除之前学过的数据类型外,列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表。
# 列表提取元素 students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']] print(students[1][3]) >>>小芳# 字典提取键 scores = {'第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}} print(scores['第二组']['小芳']) >>>88
# 列表和字典嵌套的情况下,提取元素: students = {'第一组':['小明','小红','小刚','小美'],'第二组':['小强','小兰','小伟','小芳']} scores = [{'小明':95,'小红':90,'小刚':100,'小美':85},{'小强':99,'小兰':89,'小伟':93,'小芳':88}] print(students['第一组'][2]) print(scores[0]['小刚'])>>>小刚 100
作业:
1、
# 把列表list1中的'love'取出来,并打印出来。 list1 = [{'嫉妒':'envy'},{'恨':'hatred'},{'爱':'love'}] print(list1[2]['爱']) print(list1[1]['恨'])# 把字典dict1中的'love'取出来,并打印出来。 dict1 = {1:['cake','scone','puff'],2:['London','Bristol','Bath'],3:['love','hatred','envy']} print(dict1[3][0])# 提取A tuple1 = ('A','B') list2 = [('A','B'),('C','D'),('E','F')] print(tuple1[0]) print(list2[0][0])>>> love hatred love A A
2、
# 请你通过所学知识,把列表中的“狼”取出来,并打印出来。 townee = [{'海底王国':['小美人鱼''海之王''小美人鱼的祖母''五位姐姐'],'上层世界':['王子','邻国公主']},'丑小鸭','坚定的锡兵','睡美人','青蛙王子',[{'主角':'小红帽','配角1':'外婆','配角2':'猎人'},{'反面角色':'狼'}]] print(townee[5][1]['反面角色'])>>> 狼
转载于:https://www.cnblogs.com/yssshiny/p/10857861.html
20190513——python基础(列表、数据类型:字典、列表和字典的异同)相关推荐
- 【python基础】——数据类型(列表、字典、集合)
骏马金龙--python语法基础 python基础 变量与运算 符号 // % ** 意义 整除 整除取余 幂次方 数据种类 #mermaid-svg-7nSRRijcYFCYwTDr .label{ ...
- 8 list切片_P018 python基础:数据类型之列表切片02
什么叫切片呢? 我们把每个列表元素当成是"一片",可以根据索引任意取一片,或者多片,甚至是全部.这种方法叫切片. 语法:list[index1:index2:step]:index ...
- python基础之数据类型III
python基础之数据类型III 5.Dictionaries(字典) 5.1字典的认识 引子 我已经讲过的数据类型 int float str bool tuple list,我们讲的列表的数据类型 ...
- 1. Python基础之数据类型与注释
文章目录 Python基础之数据类型与注释 1.变量 2.数据类型 2.1 Number类型 Int 整型 Float 浮点型 2.2 Bool 布尔类型 2.3 String 字符串类型 2.4 L ...
- Python基础之数据类型II
Python基础之数据类型II 3.List(列表) 引子 我们现在已经学过的基础数据类型: int float str bool,str类型可以帮我们存储少量的数据,但是str有什么缺点? str存 ...
- Python基础之数据类型(一)
Python基础之数据类型(一) 一.数据类型种类 二.int类型 三.float类型 1.float介绍 2.float简单示例 三.bool类型 1.布尔值为true 2.布尔值为false 四. ...
- python基础:序列(列表、元组、字符串)、函数、字典、集合
Python语言运行环境: windows linux unix Macos等等 博客记录内容: Python3的所有语法.面向对象思维.运用模块进行编程.游戏编程.计算机仿真. Python是什么类 ...
- Python 基础(二)[列表,字典,文件操作]
本章内容: 列表 & 元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 Python 语言从未如此性感! 列表 Python中最基本的数据结构 Python有6个序列的内 ...
- python:python基础语法三,列表、元组、字典、集合
python基础语法 文章目录 python基础语法 列表(list) 列表简介 切片 列表修改元素 列表的方法 遍历列表 序列(sequence) 序列的基本操作 range()函数 EMS(Emp ...
最新文章
- 青少年编程竞赛交流群第050次活动录播
- 2018-2019-2 20165315《网络攻防技术》Exp6 信息搜集与漏洞扫描
- Java多线程精讲(非高并发-授课专用)附synchronized
- python 枚举相等判断_python中is和==的区别
- WEB安全基础-WEB服务器相关知识
- ajax datatype_jQuery中的 AJAX
- 有什么激励你一辈子的句子?
- 国土空间规划数据汇交标准_国土空间规划数据治理指南来了
- KNN之约会网站测试
- Atitit.c# .net 3.5 4.0 4.5 5.0 6.0各个版本新特性战略规划总结
- 库缓存(Library Cache)内存结构
- h5 7个移动端框架
- 昂达ONDA B460SD4 UEFI模式刷BIOS教程
- 跑步到底伤不伤膝盖?励建安教授给你权威解答
- deepin系统维护(系统扩容)deepin live
- 保险行业CRM客户关系管理系统解决方案
- linux下安装python3出现无configure_Linux下安装Python3.9.0
- idea Dmaven.multiModuleProjectDirectory=$M2_HOME报错!!!
- 简约立体设计感答辩PPT模板
- 北京大学计算机硕博连读5年,北京大学研究生院
热门文章
- 华为OD机试真题 Java 实现【记票统计】【牛客练习题】
- 从顶点小说下载小说的python代码
- 精灵商场项目(五)--虚拟机Linux使用+Nginx反向代理
- Bug记录: No ParameterResolver registered for parameter
- not a genuine ST device,可能是个“假”芯片
- 商学院学习笔记(1)
- 形状相似的物品_找身边与图形相似的事物
- java 火焰_利用火焰图查找java耗时最长的方法
- C++之设置背景图片(Easyx)
- 云计算项目经理前景_工人和施工项目经理有什么区别