自学python笔记心得——元组,集合与字典
元组一.基本定义元组是不可变的序列类似于列表但创建后不能修改。特点1.可以存储不同类型的元素2.元素可以重复、有序、不可以修改(支持索引访问、切片)二.基本方法count()统计某元素在元组中出现的次数index()查找某个元素在元组中的索引位置(第一次出现的位置)三.组包与解包1.组包Packing将多个值合并到一个容器元组、列表中。2.解包Unpacking将容器(元组、列表)解开成独立的元素分别赋值给多个变量。#组包 a,b,c,d1,2,3,4 t(a,b,c,d) print(t) #解包 d,*e,gt print(d,e,g)注*的作用是将解包中剩余的元素赋值给这个元素形成新的列表案例现有两个变量分别为a 10b 20现需要将这两个变量值交换然后输出到控制台案例2.根据提供的学生成绩单完成如下需求1.计算每个学生的总分、各科平均分然后一并输出出来。2.统计各科成绩的最低分、最高分、平均分并输出。3.查找成绩优秀平均分大于90的学生并输出。sum_chines0 student( (1,a,98,99,98), (2,b,45,98,87), (3,c,76,79,56), (4,d,78,89,75), (5,e,87,87,64), (6,f,67,89,97) ) #将学生的信息录入到元组内 #计算每个学生的总分、各科平均分然后一并输出出来 for i in student: sumi[2]i[3]i[4] avgsum/3 print(f{i[1]}\t的总分为{sum}\t,平均分是{avg:.1f}) chines[i[2] for i in student ] for i in chines: sum_chinesi math[i[3] for i in student ] english[i[4] for i in student ] print(min(chines),max(chines),sum_chines/len(chines)) for i in student: sumi[2]i[3]i[4] avgsum/3 if avg90: print(f{i[1]}是优秀学生)集合一.基本定义集合(set)是一种无序的、不可重复、可修改的数据容器。二.常用方法add(..) 添加元素到集合中s1.add(t)remove(..) 移除集合中的指定元素指定元素不存在将报错s1.remove(t)pop() 随机删除集合中的元素并返回e s1.pop()clear() 清空集合s1.clear()difference() 求取两个集合的差集包含在第一个集合但不包含在第二个集合的元素s1.difference(s2)union() 求取两个集合的并集s1.union(s2)intersection() 求取两个集合的交集s1.intersection(s2) 交集| 并集- 差集案例根据提供的班级学生的选课情况完成如下需求1.找出同时选修了数学和英语的学生2.找出同时选修了所有三门课程的学生3.找出选修语文,但是没有选修数学的学生4.统计每一个学生选修的课程数量chinese{001,003,008,009,002} english{002,003,004,005} maths{002,007,006,008,005,00a4} all_achinese english print(all_a) all_allchinese english maths english print(all_all) not_m chinese - maths print(not_m) id_namechinese | english|maths all_name[*chinese,*english,*maths] for i in id_name: print(f{i}同学选了{all_name.count(i)}个学科)注利用解包的特点把三门学科的所有信息放进一个列表中再用列表的count看每个学生出现过几次就是每个学生选了几门科目字典一.基本定义Python中的字典dict里面存储的是键值对key: value类型的数据可以根据键(key)找到对应的值(value)。二.基本格式a{001:1,002:2,003:3,004:4,005:5} #定义空字典 c {} d dict() print(a[001]) print(a[002]) print(a[003])注意字典dict中的value可以是任何类型的数据而key不能为可变类型如不能为 列表list、集合set、字典dict。三.字典的基本方法案例发一个购物车管理系统实现商品信息的添加、修改、删除、查询功能。系统使用字典结构存储商品数据通过控制台菜单与用户交互。具体功能如下1.添加购物车用户根据提示录入商品名称、以及该商品的价格、数量保存该商品信息到购物车。2.修改购物车要求用户输入要修改的购物车商品名称然后再提示输入该商品的价格、数量输入完成后修改该商品信息。3.删除购物车要求用户输入要删除的购物车名称根据名称删除购物车中的商品。4.查询购物车将购物车中的商品信息展示出来#购物车的定义格式应为{item:{value:,number}} #购物车程序可以惊醒多个功能应用match...case匹配 i_item{} while True: choice int(input(请输入你想执行的操作\n)) match choice: case 1: # 录入商品的价格数量名称 item_name input(请输入商品的名称) item_value input(请输入商品的价格) item_number input(请输入商品的数量) if item_name in i_item: print(购物车中已存在该商品) else: i_item[item_name] {value: item_value, number: item_number} print(i_item) case 2: item_name input(请修改商品的名称) item_value input(请修改商品的价格) item_number input(请修改商品的数量) if item_name not in i_item: print(该商品不在购物车中) else: i_item[item_name] {value: item_value, number: item_number} case 3: item_name input(请删除商品的名称) if item_name not in i_item: print(该商品不在购物车中) else: del i_item[item_name] case 4: item_name input(请查看商品的名称) if item_name not in i_item: print(该商品不在购物车中) else: print(i_item.get(item_name)) case 5: break
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2435273.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!