python学习第六节:使用python制作九九乘法表和学生管理系统
通过前面五节的了解,已经大概知道python的语法以及基础函数,下面是简单的两个小程序。不会做没关系,看得懂就可以了,如果能够自己加工举一反三那就更好了。
ps:前面五节只是简单讲解了python的基础语法和函数,也就是混个脸熟,没有进行深入讲解,如果展开来讲的话每一个单独的语法和函数都能将几大章,而很多语法和函数的用法我们根本用不上。为了不打击初学者的信心,我只写了个大概,后面需要使用的时候再去深入了解即可。
忘了说了,我也是python初学者,正在一点一点学习,如果我讲的有不对的地方请大家多多指正!
九九乘法表
效果图:
代码:
def mult():i=1while i<10:j=1while j<=i:#print(j,"*",i,"=",j*i,end="\t") #第一种输出法,直接拼接print("%d * %d = %d" %(j,i,j*i),end="\t") #第二种输出法,使用占位符j+=1print("")i+=1
mult()
学生管理系统
这个系统分两个py文件,一个工具文件,一个运行文件。这里面用到了前面五节中说到的很多东西,并且还有不同的用法。
工具文件 tools.py 也就是文件名称,如果名称要改的话,请在运行文件中改一下引用。
# 记录所有学生字典
student_list = []
# 显示系统菜单列表
def show_menu():"""显示菜单"""print("*" * 50)print("""欢迎使用[学生管理系统] V3.0\n1.新建学生资料\n2.显示全部学生\n3.查询学生资料\n0.退出系统""")print("*" * 50)# 添加功能
def add_menu():"""新增学生"""print("新增学生")# 1.提示用户输入学生的详细信息name = input("请添加姓名:")age = input("请添加年龄:")sex = input("请添加性别:")tel = input("请添加手机号码:")# 2.使用用户输入的信息建立一个学生字典student_dict = {"name": name,"age": age,"sex": sex,"tel": tel}# 3.将学生字典添加到列表中student_list.append(student_dict)print("您刚新增的学生信息如下:",student_list)# 4.提示用户添加成功print("学生资料添加成功!")# 显示查询功能
def show_all():"""显示全部学生"""print("_" * 50)print("显示全部学生资料")if len(student_list) == 0:print("当前没有任何学生记录,请使用新增功能添加学生哦")# return 可以返回一个函数的执行结果# 如果 return 后面没有任何的内容,表示会返回到调用函数的位置继续执行# 并且不返回任何的结果return# 打印表头for name in ["姓名", "年龄", "性别", "手机号码"]:print(name, end="\t\t")print("")# 循环遍历输出字典信息for student_dict in student_list:print("%s\t\t%s\t\t%s\t\t%s" % (student_dict["name"],student_dict["age"],student_dict["sex"],student_dict["tel"]))# 搜索学生资料
def search_student():"""搜索学生资料"""search_key = input("请输入要搜索的关键字:")for student_dict in student_list:for key in student_dict:if student_dict[key] == search_key:print("找到 %s 的相关信息了" % search_key)for name in ["姓名", "年龄", "性别", "手机号码"]:print(name, end="\t\t")print("")# 循环遍历输出字典信息print("%s\t\t%s\t\t%s\t\t%s" % (student_dict["name"],student_dict["age"],student_dict["sex"],student_dict["tel"]))deal_student(student_dict)breakelse:print("没有找到 %s" % search_key)print("搜索学生信息")# 针对学生资料的功能列表
def deal_student(find_dict):# while True:num_card = int(input("请选择功能序号:1.修改 2.删除 0.返回上级菜单 :"))if num_card == 1:find_dict["name"] = input_student_info(find_dict["name"], "修改姓名:")find_dict["age"] = input_student_info(find_dict["age"], "修改年龄:")find_dict["sex"] = input_student_info(find_dict["sex"], "修改性别:")find_dict["tel"] = input_student_info(find_dict["tel"], "修改手机号码:")elif num_card == 2:student_list.remove(find_dict)elif num_card == 0:passelse:print("输入有误,请重新输入")# 读取控制台输入的信息
def input_student_info(dict_value, tip):result_str = input(tip)if len(dict_value) > 0:return result_strelse:return dict_value
运行文件,这个文件就随意取名了,我这里取的是 qk.py
import tools# while True 无限循环
while True:try:# 显示功能菜单tools.show_menu()# 控制台输入操作指令action_str = int(input("请选择你想要执行的操作:")) # 这里会将输入的指令强转为整数类型,如果输入的不是整数类型会进入下面的 exceptprint("你想要执行的操作是 %d" % action_str)# 1,2,3 是系统的功能选择操作except ValueError as e:print(e)print("您输入的不是数字,请再次尝试输入!")continue# 根据功能指令调用不同的方法if action_str in [1, 2, 3]:# 新增学生if action_str == 1:tools.add_menu()# 全部学生资料elif action_str == 2:tools.show_all()# 查询学生资料elif action_str == 3:tools.search_student()# 0 退出系统elif action_str == 0:print("欢迎再次使用【学生管理系统】")break# 如果在开发程序时,不希望立刻编写分支内部的代码# 可以使用 pass 关键字,表示一个占位符,能够保证程序代码结构正确# 程序运行时,pass不会执行任何操作pass# 输入其他内容有误提示用户else:print("你输入的有误,请重新输入")
大家把这两个文件代码复制到编辑器中,运行qk.py文件就可以进入《学生管理系统》了!