python学习第六节:使用python制作九九乘法表和学生管理系统
通过前面五节的了解,已经大概知道python的语法以及基础函数,下面是简单的两个小程序。不会做没关系,看得懂就可以了,如果能够自己加工举一反三那就更好了。
ps:前面五节只是简单讲解了python的基础语法和函数,也就是混个脸熟,没有进行深入讲解,如果展开来讲的话每一个单独的语法和函数都能将几大章,而很多语法和函数的用法我们根本用不上。为了不打击初学者的信心,我只写了个大概,后面需要使用的时候再去深入了解即可。
忘了说了,我也是python初学者,正在一点一点学习,如果我讲的有不对的地方请大家多多指正!
九九乘法表
效果图:
代码:
def mult():
i=1
while i<10:
j=1
while j<=i:
#print(j,"*",i,"=",j*i,end="\t") #第一种输出法,直接拼接
print("%d * %d = %d" %(j,i,j*i),end="\t") #第二种输出法,使用占位符
j+=1
print("")
i+=1
mult()
学生管理系统
这个系统分两个py文件,一个工具文件,一个运行文件。这里面用到了前面五节中说到的很多东西,并且还有不同的用法。
工具文件 tools.py 也就是文件名称,如果名称要改的话,请在运行文件中改一下引用。
# 记录所有学生字典
student_list = []
# 显示系统菜单列表
def show_menu():
"""显示菜单"""
print("*" * 50)
print("""
欢迎使用[学生管理系统] V3.0\n
1.新建学生资料\n
2.显示全部学生\n
3.查询学生资料\n
0.退出系统
""")
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)
break
else:
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:
pass
else:
print("输入有误,请重新输入")
# 读取控制台输入的信息
def input_student_info(dict_value, tip):
result_str = input(tip)
if len(dict_value) > 0:
return result_str
else:
return dict_value
运行文件,这个文件就随意取名了,我这里取的是 qk.py
import tools
# while True 无限循环
while True:
try:
# 显示功能菜单
tools.show_menu()
# 控制台输入操作指令
action_str = int(input("请选择你想要执行的操作:")) # 这里会将输入的指令强转为整数类型,如果输入的不是整数类型会进入下面的 except
print("你想要执行的操作是 %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文件就可以进入《学生管理系统》了!