您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > python基础语法4-9关学习笔记
python基础语法4-9关学习笔记第4关列表和字典-收纳的艺术课程⽬标1.熟练掌握列表、字典中元素的增删改查2.理解列表和字典的区别课程难点1.列表与字典增删改查的异同2.正确使⽤切⽚,深刻理解切⽚时冒号左右数字的意义课程重要内容重现⼀、列表1.代码格式数据存储在中括号[]⾥,⽤逗号隔开并使⽤等号赋值给列表。中括号⾥⾯的每⼀个数据叫作“元素”。列表中的元素是有⾃⼰明确的“位置”的,元素相同,在列表中排列顺序不同,就是两个不同的列表。列表中字符串、整数、浮点数都可以存储。1.提取元素1)偏移量:元素在列表中的编号。偏移量是从0开始的;列表名后加带偏移量的中括号,就能取到相应位置的元素。结果是⼀个元素2)切⽚:⽤冒号来截取列表元素的操作。冒号左边空(或者为0),:m,表示从头取m个元素;右边空(或者为0),n:,跳过前n个元素把剩下的取完;冒号左右都有数字时,n:m,表示跳过前n个元素,取到第m个。(取出前m个元素中除了前n个后剩下的那些)切⽚截取了列表的⼀部分,所以得到的结果仍然是⼀个列表。(即使只有⼀个元素,也是在列表⾥的,要与⽤偏移量取单个元素的⽅法区别开)list=['小明',17,5.2]13)特别地,a,b,c=students,也可以提取出列表中的元素,变量分别⽤逗号隔开,且变量的数量与列表元素个数⼀致,昀终列表元素会分别赋值给变量,例如:1.增加/删除元素1)增加元素列表名.append()。注意这⾥是.不是空格!append后的括号⾥只能接受⼀个参数,结果是让列表末尾新增⼀个元素。列表⻓度可变,理论容量⽆限,所以⽀持任意的嵌套。但是append(4,5)会报错,因为给了两个元素(没有作为⼀个整体,所以算两个参数)。注意!!千万不能:a=student.append(3),这样a⾥只有none。2)删除元素del列表名[元素的索引]。注意这⾥是空格不是.了!与append()函数类似,能删除单个元素、多个元素(切⽚)、整个列表。3)修改元素使⽤偏移量修改对应位置的元素。students=['小明','小红','小刚']1print(students[2])2#使用偏移量提取单一元素,结果显示:3#小刚4print(students[2:])5#使用切片,即使结果仍然只有一个元素,但显示为列表:6#['小刚']7appetizer=['话梅花生','拍黄瓜','凉拌三丝']1a,b,c=appetizer23print(a)4print(b)5print(c)6print(a,b,c)7#结果显示为8#话梅花生9#拍黄瓜10#凉拌三丝11#话梅花生拍黄瓜凉拌三丝12list3=[1,2]1list3.append(3)2print(list3)3#添加‘3’这个元素4#结果显示:5#[1,2,3]67list3.append(4,5)8list3.append([4,5])9print(list3)10#添加‘[4,5]’这个列表,也就是append()的参数为一个列表,也是一个参数,所以不会报错11#结果显示:12#[1,2,3,[4,5]]13⼆、字典字典所存储的两种数据若存在⼀⼀对应的情况,⽤字典储存会更加⽅便。唯⼀的键和对应的值形成的整体,我们就叫做【键值对】。键具备唯⼀性,⽽值可重复。1.代码格式字典外层是⼤括号{},⽤等号赋值;列表中的元素是⾃成⼀体的,⽽字典的元素是由键值对构成的,⽤英⽂冒号连接。有多少个键值对就有多少个元素。如'⼩明':95,其中我们把'⼩明'叫键(key),95叫值(value)。键值对间⽤逗号隔开字典中数据是随机排列的,调动顺序也不影响。所以列表有序,要⽤偏移量定位;字典⽆序,便通过唯⼀的键来定位。(注:len()函数⽤于获取数据⻓度)2.提取元素字典没有偏移量,所以在提取元素时,中括号中应该写键的名称,即字典名[字典的键]。提取出来的是key对应的value,⽽不会显示键的数据!3.增加/删除元素、1)新增元素字典名[键]=值。每次只能新增⼀个键值对。scores['⼩刚','⼩美']=92,85,这样是不对的,昀终会输出('⼩刚','⼩美':(92,85))作为⼀个键值对。list1=['小明','小红','小刚','小美']1list1[1]='小蓝'2print(list1)3#结果显示4#['小明','小蓝','小刚','小美']5students=['小明','小红','小刚']1scores={'小明':95,'小红':90,'小刚':90}2print(len(students))3print(len(scores))4#结果显示5#36#37#字典的元素个数,数冒号就行了8scores={'小明':95,'小红':90,'小刚':90}1print(scores['小明'])2#结果显示3#954album={'周杰伦':'七里香'}1album['王力宏']='心中的日月'2album['林俊杰']='小酒窝'3print(album)4print(album['周杰伦'])5#结果显示6#{'周杰伦':'七里香','王力宏':'心中的日月','林俊杰':'小酒窝'}7#七里香82)删除元素del字典名[键]3)修改元素如果不是整个键值对都不需要,只需要改变对应key下的value,修改就可以,不需要del。三、列表与字典的嵌套1.列表与列表列表中有两个列表元素,[1]表示取第⼆个元素(列表),[2]表示取第⼆个元素中的第三个元素(偏移量为2)。2.字典与字典字典中存储了两个字典,所以提取数据时只能⽤key值。3.列表与字典使⽤偏移量从昀外层括号到昀内层括号取数。查找townee列表中的第六个元素中的第2个元素(⼀定是字典,因为之后⽤的是键值⽽不是偏移量)中key为'反⾯⻆⾊'的value。album={'周杰伦':'七里香','王力宏':'心中的日月'}1delalbum['周杰伦']2print(album)3#结果显示4#{'王力宏':'心中的日月'}5dict1={'小明':'男'}1dict1['小明']='女'2print(dict1)3#字典没有偏移量,只能通过key找到元素位置4student=[['小红','小黄','小橙'],['小绿','小蓝','小紫','小青']]1print(student[1][2])2#结果显示为3#小紫4scores={'第一组':{'小明':95,'小红':96},'第二组'{'小刚':94',小青':99}}1print(scores['第一组']['小红'])2#结果显示:3#964townee=[1 {'海底王国':['小美人鱼''海之王''小美人鱼的祖母''五位姐姐'],'上层世界':['王子','邻国公主']},2 '丑小鸭','坚定的锡兵','睡美人','青蛙王子',3 [{'主角':'小红帽','配角1':'外婆','配角2':'猎人'},{'反面角色':'狼'}]4 ]5print(townee[5][1]['反面角色'])6第5关for循环和while循环-消灭该死的重复(上)课程⽬标1.掌握for...in...循环的格式与特点,了解其数据传递2.熟练掌握for...in...与range()函数的结合使⽤3.掌握while循环的格式与特点4.区别for...in...循环与while循环课程难点1.range()函数各个参数的含义2.for...in...循环与while循环的变量更迭3.while语句如何避免死循环课程重要内容重现⼀、range()函数1.使⽤range()函数,可以⽣成⼀个整数序列。2.参数的意义:range(n)与range(0,n)⼀样,都是⽣成⼀个从0到n-1的整数序列range(m,n),nm,⽣成从m到n-1的序列。取头不取尾。range(m,n,p),nm,⽣成m到n-1中间隔为p的整数序列。例如range(3,30,5)的意思就是从3开始每间隔5取⼀个数,直到29,结果为[3,8,13,18,23,28]。(只有两个参数时,p默认为1。)⼆、for...in...循环1.i是变量名,可以根据需要取。2.遍历:逐⼀访问全部数据。3.⽤于处理已知循环次数或循环固定次数的问题。4.格式:for...in...语句昀后需要接冒号for...in...语句内部语句需要缩进,会被重复执⾏5.in后可接列表、字典和字符串,但不允许接整数、浮点数。列表⾥的元素值依次赋值给变量i,i昀终的值取决于昀新⼀次的赋值。若是字典,则赋值给变量的是字典中的key,⽽不是value。即遍历的是key。对于字符串⽽⾔,会依次输出字符。6.range()函数配合使⽤可以⽤for...in...语句遍历range()函数⽣成的整数序列并打印。foriin[1,2,3,4,5]:1print(i)2#显示结果为:3#14#25#36#47#58foriin'吴承恩':9print(i)10#显示结果为:11#吴12#承13#恩1415d={'小明':'醋','小红':'油','小白':'盐','小张':'米'}16foriind:17 print(i)18#显示结果为:19#小明20#小红21#小白22#小张2324d={'小明':'醋','小红':'油','小白':'盐','小张':'米'}25foriind:26 print(d[i])27#显示结果为:28#醋29#油30#盐31#米32foriinrange(13,17):1 print(i)2#显示结果为:3#134#145#156#167foriinrange(n):,表示循环n次。如下⾯例题中i=0,i=1,i=2时都执⾏⼀次语句内的代码,也就是3次。三、while循环1.与if条件判断类似,while后条件若满⾜,会进⼊语句内部循环直⾄条件不再满⾜或内部打断。2.⽤于处理未知循环次数或循环固定次数的问题。3.格式在while循环前要定义变量为避免陷⼊死循环,在循环内必须更新变量,如⾃加:a=a+1,也可以写成a+=1。循环体内部需要缩进!四、*pop()函数⽤于移除列表中的⼀个元素(若不指定参数,则默认昀后⼀个元素),并且返回该元素的值。可以指定移除元素,列表使⽤偏移量为参数,字典使⽤key作为参数。例如:students.pop(0)是删除并提取students这个列表中偏移量为0的元素并返回这个元素。foriinrange(3):1 print('我很棒')2#结果显示为:3#我很棒4#我很棒5#我很棒6a=01#非格式要求,但在while循环前必须要定义变量23whilea5:4a=a+15print(a)6#显示结果为:(不显示0是因为a先自加再输出,此时赋值已更新)7#18#29#310#411#512a=013e循环前必须要定义变量14whilea5:15a=a+116print(a)17#显示结果为:(因为print()在循环外,只输出最终a的赋值)18#519students=['小明','小红','小刚']1student1=students.pop(0) 2#运用pop()函数,同时完成第一个元素的提取和删除。并将pop()的返回值存在student1这个变量中。3students.append(student1) 4#将移除的student1安排到最后一个座位。5第6关布尔值和四种语句-消灭该死的重复(下)课程⽬标1.熟悉布尔值与布尔运算2.掌握break语句、continue语句如何与if结合使⽤课程难点1.数值本身作为判断条件时,何为真何为假2.break语句、continue语句与if结合使⽤时的缩进量课程重要内容重现⼀、布尔值与布尔运算1.布尔值:True(判断为真)和False(判断为假)。为真,则可继续运⾏下去,为假,条件不成⽴,不会执⾏接下来的语句。在使⽤True与False时⾸字⺟要⼤写!2.布尔运算:⽤
本文标题:python基础语法4-9关学习笔记
链接地址:https://www.777doc.com/doc-5866720 .html