版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8435759项目二
组合数据类型在学生成绩管理系统中的应用xx学院-XX学院《python程序设计》
项目一复习e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF复习提问:1.Python中的变量不需要声明类型,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建;Python的常量是程序中使用的具体的数字、字符串或其他类型的值,在程序运行的过程中,数值无法更改。2.Python中的数据类型包括:整型(int)、浮点型(float)、复数型(complex)、布尔型(Boolean)、字符串(String)、列表(List)、元祖(Tuple)、字典(Dictionary)、集合(Set),其中列表(List)、元祖(Tuple)、字典(Dictionary)、集合(Set)属于复合类型。3.Python运算符用于执行程序代码运算,可以执行某种运算或者是某项操作;表达式是将不同类型的数据(常量、变量、函数)用运算符按照一定的规则连接起来的式子,表达式的组成由运算符(Operators)和操作数(Operands);表达式可以分为算数表达式、逻辑表达式、关系表达式和测试表达式等。4.Python使用input函数进行输入,使用print函数进行输出,使用%、format或者f-string格式化进行格式化输出,为了达到某种效果,Python设计了转换说明符或者format进行控制格式化输出。e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF【项目综述】在项目一中通过基本数据类型开发学生成绩管理系统,在程序中保存学生信息和课程成绩用定义的变量保存,当数据较多时这种方式是不可行的,也不能完成较为复杂的系统,为解决该问题,本项目通过组合数据类型保存学生信息、课程及课程成绩,继续完善学生成绩管理系统。e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF【学习目标】能描述列表、元组、字典、集合的特点及应用领域,熟悉列表常用方法,能将这些技术应用到学生成绩管理系统程序编写中。能对问题进行分析,借助互联网、相互讨论解决问题,提升自己分析问题和解决问题能力。了解国家战略发展方向和新技术发展动态,努力学习,树立理想,将自己的学习与国家的发展融合起来,主动承担社会责任,为国家科技进步做出自己的贡献。e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF【重点和难点】【知识重点】1.Python组合数据类型的种类、特点和基本方法。2.Python组合数据类型应用场景,解决应用中的问题。【知识难点】运用Python组合数据类型解决应用中的问题。e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF【学习内容】任务一利用列表存储学生管理系统中的课程数据任务二利用元组存储学生管理系统中的课程数据任务三利用字典存储学生管理系统中的成绩数据任务四运用集合处理问题e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据在项目一中通过基本数据类型编写学生成绩管理系统,学生成绩采用变量进行保存,这种方法不能适应处理复杂数据场景,因此本任务学习Python列表的创建、修改、删除、查看,并在此基础上运用列表存储学生的课程信息,使程序更加清晰,并且还能达到数据共享复用的目的。【任务描述】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据1.列表定义和基本操作C语言、C++、Java、PHP、JavaScript采用数组存放序列数据,数组中元素的数据类型是相同的。Python中没有数组,使用强大的列表实现,列表可以存储整数、小数、字符串、列表、元组等任何类型的数据,并且同一个列表中元素的类型也可以不同。通过学习和掌握Python列表的使用,开发者能够更加高效地构建各种应用程序,处理各种数据处理任务。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据2.Python列表
列表是有序的,这意味着元素的顺序与它们添加到列表的顺序一致,这使得列表非常适合用于需要保持元素插入顺序的场景。其次,列表的可变性是其一个重要特性,允许用户添加、删除或修改列表中的元素。
列表可以包含不同数据类型的元素,如整数、浮点数、字符串等,甚至可以包含其他列表。Python提供了丰富的内建方法,如append()、insert()、sort()等,用于操作列表。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据2.Python列表列表的定义方式是将所有元素都放在一对中括号[]里面,相邻元素之间用逗号分隔,定义语法格式为:[element1,element2,element3,...,elementn]其中,element1~elementn表示列表中的元素,个数和类型没有限制。代码中可以看出,列表中可以同时包含字符串、整数、列表、浮点数这些数据类型,通过type()函数可以知道列表的数据类型是list。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(1)创建列表创建列表可以采用直接赋值、序列重复、list()函数、推导式、其他数据类型转换等方式实现。代码中采用直接赋值、“*”运算符序列重复、list()函数、推导式方式产生列表。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(1)创建列表创建列表可以采用直接赋值、序列重复、list()函数、推导式、其他数据类型转换等方式实现。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(2)访问列表元素列表存储采用有序存储,即数据元素按特定顺序依次排列,它们占用一块连续的内存,每个元素都有属于自己的编号(索引)。从起始元素开始,索引值从0开始递增。除此之外,Python还支持索引值是负数,此类索引是从右向左计数,从最后一个元素开始计数,从索引值从-1开始.【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(2)访问列表元素注意,在使用负值作为列序中各元素的索引值时,是从-1开始,而不是从0开始。无论是采用正索引值,还是负索引值,都可以通过索引访问列表中的任何元素。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(3)列表的切片操作如果想输出列表中一部分数据,可以采用切片方式实现,切片方式的格式是listname[start:end:step],其中,listname表示列表名字,start表示起始索引,end表示结束索引,step表示步长。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(4)切片超范围异常处理在程序编写过程中还需要注意切片超出范围的问题,索引范围是0到len(列表)-1,超出这个范围的索引会引发IndexError,需要在程序中通过使用try/except块来捕获并处理这种错误,避免程序崩溃,执行异常处理。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.Python列表的创建、访问与基本操作(5)删除列表在程序开发中如果某个列表已经不在需要了,可以使用del关键字将其删除。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(1)添加元素使用+运算符可以将多个列表连接起来,这样就相当于在第一个列表的末尾添加了另一个列表。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(1)添加元素
①append()方法。append()方法的格式是listname.append(obj),其中,listname表示要添加元素的列表;obj表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(1)添加元素②extend()方法。extend()和append()的不同之处在于extend()不会把列表或者元组视为一个整体,而是把它们包含的元素逐个添加到列表中,成为列表的元素。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(1)添加元素
③insert()方法。insert()方法可以从列表中间某个位置插入元素【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(2)删除元素①使用del关键字删除。del是Python中的关键字,专门用来执行删除操作,它不仅可以删除整个列表(释放内存),还可以删除列表中的某些元素。del可以删除列表中的单个元素,格式为dellistname[index],其中,listname表示列表名称,index表示元素的索引值。del也可以删除中间一段连续的元素,格式为dellistname[start:end],其中,start表示起始索引,end表示结束索引。del会删除从索引start到end之间的元素,不包括end位置的元素。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(2)删除元素②使用pop()方法删除。pop()方法用来删除列表中指定索引处的元素,具体格式是listname.pop(index)。如果不写index参数,默认会删除列表中的最后一个元素,类似于数据结构中的“出栈”操作。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(2)删除元素③使用remove()方法删除列表元素。remove()方法,该方法会根据元素本身的值来进行删除操作。remove()方法只会删除第一个和指定值相同的元素,而且必须保证该元素是存在的,否则会引发ValueError错误。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(2)删除元素④使用clear()删除列表所有元素。clear()用来删除列表的所有元素,也即清空列表。这里需要注意的是clear()方法与del关键字的区别,clear()方法是清空列表中的所有元素,但列表对象本身保持不变;del删除列表时,列表中的所有元素及列表对象本身都不存在了。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(3)修改元素Python提供了两种修改列表(list)元素的方法,可以每次修改单个元素,也可以每次修改一组元素(多个)。①使用索引修改单个元素。直接在列表中使用索引,通过赋值修改单个元素的值。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(3)修改元素Python提供了两种修改列表(list)元素的方法,可以每次修改单个元素,也可以每次修改一组元素(多个)。②使用切片赋值修改一组元素。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(3)修改元素可以通过空切片(slice)赋值,插入一组新的元素,原来的元素后移。使用切片语法时也可以指定步长(step参数),但这个时候就要求所赋值的新元素的个数与原有元素的个数相同。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(4)查找元素Python列表(list)提供了index()方法返回元素所在列表中的索引,count()方法统计元素出现次数及判断元素是否存在。①利用count()方法统计元素出现次数。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.列表元素的基本操作(4)查找元素②利用index()方法查找元素。index()方法会返回元素所在列表中的索引值。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据5.列表排序及高级操作
(1)列表排序sorted()函数和列表的sort()方法可以对列表进行排序。Python的sorted()函数可以对列表、元组、字典等进行排序,产生新的对象sort()方法在列表上原地排序【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据5.列表排序及高级操作
(1)列表排序sorted()函数和列表sort()方法均可以定义key函数返回值,按照函数返回值进行排序【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据5.列表排序及高级操作
(2)高级列表操作①列表推导式。列表推导式提供了一种简洁的创建新列表的方式。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据5.列表排序及高级操作
(2)高级列表操作②利用filter、map、reduce生成列表。filter()是从一个序列中过滤出符合条件的元素,返回一个迭代器对象;map()函数对一个序列中的每个元素进行函数操作,返回一个新的序列;reduce()函数先对集合中的第1、2个元素进行操作,得到的结果再与第三个数据用定义的function函数运算,最后得到一个结果。【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据1.用列表存储学生管理系统课程数据(完成后上传到gitlab中)
在项目一中学生的课程成绩信息直接通过input()函数输入,然后保存到python_score、math_score、en_score、computer_score、intelligence_score变量中,如果课程信息变化,整个涉及该变量的代码部分均需要修改,不利于程序的维护和数据复用,为了优化项目一的代码,采用列表方式保存课程成绩信息,列表定义如下:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据2.修改输入课程成绩代码
采用列表保存课程成绩信息,对应对成绩输入部分的代码也需要做出修改,修改后的代码如下:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据3.修改输出课程成绩代码
对于课程成绩输出的代码也对应做出修改,修改后的代码如下:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.编写完整的学生课程成绩管理系统程序
采用列表存储学生管理系统课程数据,通过对输入和输出代码修改后,完整的代码如下:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据4.编写完整的学生课程成绩管理系统程序
采用列表存储学生管理系统课程数据,通过对输入和输出代码修改后,完整的代码如下:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据5.运行测试(完成后上传到gitlab中)
运行完整的代码,输入学生的姓名(大壮)和专业(计算机科学与技术)后,输入对应课程成绩后,运行结果如下所示:【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务一利用列表存储学生管理系统中的课程数据在JupyteNotebook环境中编写代码:1、定义一个列表,执行del和clear()方法,分别查看结果,说明del和clear()方法的区别。2、对列表a=[10,20,30,40,50],请取出索引为3~8之间的元素。3、自定义列表,分别使用append()、extend()、insert()方法添加元素,查看结果,说明append()、extend()、insert()方法添加元素区别。4、对列表a=[10,20,30,40,50],请使用lambda函数实现该列表的值变为[50,100,150,200,250]。5、采用解析式的方式,生成6~30(包含30)之间能被2整除和能被3整除的列表。【思考与练习】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据在任务一中使用列表保存学生成绩管理系统中课程成绩信息,在Python中可以采用元组保存不需要修改的数据。运用元组存储学生的课程信息,同样可以使程序代码清晰,并且达到数据共享复用的目的。因此本次任务学习Python元组的创建、修改、删除、查看,并在此基础上用元组保存学生成绩管理系统中课程成绩信息。【任务描述】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据1.Python元组元组(tuple)是Python中另一个重要的序列结构,和列表类似,元组也是由一系列按特定顺序排序的元素组成。元组和列表(list)的不同之处在于:①可变性:元组是不可变的,一旦创建,其内容就不能修改;而列表是可变的,可以添加、删除或修改元素。②性能:由于元组不可变,它们通常比列表更节省内存,访问速度也更快。③语法:空元组可以不加括号,但为了避免歧义,通常会加上;列表则必须用方括号[]。④用途:元组常用于需要不可变数据的情况,如函数返回多个值、作为字典键等;列表则适合存储可变数据或需要频繁增删改的操作。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据1.Python元组从形式上看,元组的所有元素都放在一对小括号()中,相邻元素之间用逗号,分隔,如下所示:(element1,element2,...,elementn),其中element1~elementn表示元组中的各个元素,个数没有限制,只要是Python支持的数据类型就可以。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.Python元组创建、访问与基本操作(1)创建元组①使用()直接创建当创建的元组中只有一个字符串类型的元素时,该元素后面必须要加一个英文逗号,否则Python解释器会将它视为字符串。上面代码运行结果可以看出只有变量a是元组,变量b是一个字符串。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.Python元组创建、访问与基本操作(1)创建元组②使用tuple()函数创建元组。除了使用()创建元组外,Python还提供了一个内置的函数tuple(),用来将其他数据类型转换为元组类型。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.Python元组创建、访问与基本操作(2)访问元组和列表一样,可以使用索引(Index)访问元组中的某个元素,也可以使用切片访问元组中的一组元素。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.Python元组创建、访问与基本操作(3)修改元组元组是不可变序列,元组中的元素不能被修改,使用append、extend、insert等列表方法都会失败,所以只能创建一个新的元组去替代旧的元组。还可以通过连接多个元组(使用+可以拼接元组)的方式向新元组中添加新元素,使用+拼接元组以后,原来元组的内容没法发生改变。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.Python元组创建、访问与基本操作(4)删除元组当创建的元组不再使用时,可以通过del关键字将其删除。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据3.列表与元组性能比较在读取和查找操作上,元组通常比列表更快,因为它们不需要维护额外的可变数据结构。然而,对于插入和删除等操作,列表通常更快,因为它们支持这些操作。
【知识准备】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据1.利用元组保存学生管理系统的课程成绩信息(完成后上传到gitlab中)在任务一种利用列表保存课程成绩信息,下面采用元组保存课程成绩信息,定义元组的代码如下:courses=("Python程序设计","高等数学","大学英语","计算机应用基础","人工智能导论")
【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据2.修改程序中输入和输出部分代码由于列表和元组访问其中的元素方法一样,因此可以直接使用任务一中输入和输出部分的代码:(1)输入部分代码#输入课程成绩python_score=int(input(f"请输入学生{courses[0]}课程成绩:"))math_score=int(input(f"请输入学生{courses[1]}课程成绩:"))en_score=int(input(f"请输入学生{courses[2]}课程成绩:"))computer_scoer=int(input(f"请输入学生{courses[3]}课程成绩:"))Intelligence_scoer=int(input(f"请输入学生{courses[4]}课程成绩:"))(2)输出部分代码print(f"{courses[0]:<20}|{python_score:>10}")print(f"{courses[1]:<20}|{math_score:>10}")print(f"{courses[2]:<20}|{en_score:>10}")print(f"{courses[3]:<17}|{computer_scoer:>10}")print(f"{courses[4]:<18}|{Intelligence_scoer:>10}")
【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据3.编写完整的学生成绩管理系统程序代码#定义元组保存学生课程信息courses=("Python程序设计","高等数学","大学英语","计算机应用基础","人工智能导论")#打印标题print("===高校学生成绩管理系统===")#输入学生基本信息stu_name=input("请输入学生姓名:")stu_major=input("请输入学生专业:")
【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据3.编写完整的学生成绩管理系统程序代码#输入课程成绩python_score=int(input(f"请输入学生{courses[0]}课程成绩:"))math_score=int(input(f"请输入学生{courses[1]}课程成绩:"))en_score=int(input(f"请输入学生{courses[2]}课程成绩:"))computer_scoer=int(input(f"请输入学生{courses[3]}课程成绩:"))Intelligence_scoer=int(input(f"请输入学生{courses[4]}课程成绩:"))#计算总分和平均分total=python_score+math_score+en_score+computer_scoer+Intelligence_scoeraverage=total/5
【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD45827A9CF任务二
利用元组存储学生管理系统中的课程数据3.编写完整的学生成绩管理系统程序代码#格式化输出print("\n====================成绩报告====================")print(f"姓名:{stu_name}专业:{stu_major}")print("-"*50)print(f"{'课程名称':<20}|{'成绩':>10}")print("-"*50)print(f"{courses[0]:<20}|{python_score:>10}")print(f"{courses[1]:<20}|{math_score:>10}")print(f"{courses[2]:<20}|{en_score:>10}")print(f"{courses[3]:<17}|{computer_scoer:>10}")print(f"{courses[4]:<18}|{Intelligence_scoer:>10}")print(f"{'总分':<22}|{total:>14.2f}")print(f"{'平均分':<21}|{average:>14.2f}")
【任务实施】e7d195523061f1c029d8a470330beef7eecbf578a74c67be34E755975358C32C42B60046E65E5AB2B817CFACDA70963A03272FA99D31C85E250EFEC4061BFB07F05F931B289192FCB8E0285A555C1F230D307BE5C25C0A023A9868BE4DC722F304C024870D51F93B1C73F8B0BFA1FC623C98224856AC19AACB53BF009612A79383772CE3D9D4DAA720XX.037AAAD458
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制胚剖片工岗前合规化考核试卷含答案
- 低压电器及元件装配工岗位环保责任制知识考核试卷含答案
- 环己胺装置操作工岗前日常考核试卷含答案
- 耐蚀塑料工岗前测试验证考核试卷含答案
- 固体树脂版印刷员岗中安全操作考核试卷含答案
- 报刊业务员安全生产规范测试考核试卷含答案
- 制油工岗位进度管理考核试卷含答案
- 安全生产责任授权讲解
- 健康宣教课程大纲
- AI汽车技术参考模版
- 2026年度锦州建设(集团)有限公司社会招聘34人笔试模拟试题及答案详解
- 2024年山东省宁津县人民医院公开招聘护理工作人员试题带答案详解
- GB/T 9799-2024金属及其他无机覆盖层钢铁上经过处理的锌电镀层
- DL-T5190.1-2022电力建设施工技术规范第1部分:土建结构工程
- DZ∕T 0348-2020 矿产地质勘查规范 菱镁矿、白云岩(正式版)
- (正式版)JTT 1499-2024 公路水运工程临时用电技术规程
- paleoscan相关软件讲解
- GA 1814.3-2023铁路系统反恐怖防范要求第3部分:运营线路
- 镭雕机作业指导书
- GB/T 34042-2017在线分析仪器系统通用规范
- GA/T 829-2009电子物证软件一致性检验技术规范
评论
0/150
提交评论