主要内容 #
综合实战:使用python编写学生信息管理系统7.字符颜色的控制 #
许多同学会见到\033[31m开头的字符串,其实是控制台通过转义字符显示不同字体的颜色,常见形式:\033[显示方式;前景色(字体颜色);背景色m + ‘打印内容’ +\033[0m,对于结尾部分可以省略。 值得一提的是,该颜色控制与具体编程语言无关(通过python shell窗口实现需加入from colorama import init;init(autoreset=True)),以下示例展示了常见的控制格式print(' hello') # 默认字体正常显示,不高亮 print('\033[31m hello\033[0m') #红色字体正常显示 print('\033[1;31m hello')#显示方式: 高亮 字体颜色:红色 print('\033[1;31;46m hello \033[0m')#显示方式: 高亮 字体颜色:红色 背景色:青色
8.学生信息的排序 #
以下示例定义了seq()成绩排序的功能,同时调用seq()函数进行验证,在使用sorted()函数排序时使用了lambda关键字,在第88课有详细讲解,本课仅供了解(这里x表示stu列表的基本元素即字典)stu=[{'id':'001',"name": '李明', "English": 97, "python": 100}, {'id':'002',"name": '王晓东', "English": 91, "python": 89}, {'id':'003',"name": '杨雪', "English": 98, "python": 92}, {'id':'004',"name": '冯小乐', "English": 87, "python": 98}, {'id':'005',"name": '刘前进', "English": 84, "python": 92}, ]#建立一个保存学生信息的列表 def seq():#按成绩排序 mark=input("输入\033[1;31m '0' \033[0m(python)或\033[1;31m '1' \033[0m(英语)进行排序:")#1和0红色高亮显示 if mark=='0': stu1 = sorted(stu, key=lambda x: x['python'], reverse=True)#sorted()函数的排序功能,按字典中的python成绩排序 for i in stu1:#逐行打印,验证seq()排序功能 print(i) elif mark=='1': stu1 = sorted(stu, key=lambda x: x['English'], reverse=True)#sorted()函数排序功能,按字典中的英语成绩排序 for i in stu1: print(i) else: print('输入有误!') seq()#调用函数
习题 #
OJ训练题 #
1、【例23.3】 简单计算器 – ★
2、【入门】求满足条件的整数个数 – ★
3、【入门】编程求1*2*3*…*n – ★
4、【例35.2】 角谷猜想 – ★★
5、【基础】回文数个数 – ★★★