"""
1、上机题
定义一个函数,实现两个数四则运算,要注意有3个参数,分别是运算符和两个用于运算的数字。
"""
def four_ari(num1, operator, num2):
"""实现两个数四则运算
:param num1: 第一个数
:param operator: 运算符
:param num2: 第一个数
:return: 返回运算结果
"""
if operator == '+':
result = num1 + num2
elif operator == '-':
result = num1 - num2
elif operator == '*':
result = num1 * num2
elif operator == '/':
if num2 != 0:
result = num1 / num2
else:
result = "做除法,要求除数不能为零!"
return result
print("-" * 20)
print("功能:实现两个数四则运算")
print("-" * 20)
while True:
first_num = input("请输入一个数:")
if first_num.isdigit():
first_num = int(first_num)
operator = input("请输入运算符(+、-、*、/):")
if operator in ['+', '-', '*', '/']:
second_num = input("请输入另一个数:")
if second_num.isdigit():
second_num = int(second_num)
print(four_ari(first_num, operator, second_num))
print()
else:
print("输入有误,请只输入数字。")
print()
else:
print("输入有误,请只输入运算符。")
print()
else:
print("输入有误,请只输入数字。")
print()
"""
2、上机题
实现学生管理系统,使用自定义函数,完成对学员的增、删、改、查和退出学生管理系统
"""
import assignment_02_students_tools
while True:
assignment_02_students_tools.print_welcome()
user_action = input("请输入您要使用的功能对应的序号:")
if user_action == "1":
assignment_02_students_tools.add_student()
elif user_action == "2":
assignment_02_students_tools.display_student()
elif user_action == "3":
assignment_02_students_tools.search_student()
elif user_action == "4":
print("退出系统")
print("欢迎再次使用")
break
else:
print("很抱歉,您输入有误,请重新输入。")
student_list = []
def print_welcome():
"""打印欢迎界面"""
print("-" * 26)
print("欢迎使用『学生管理系统』V1.0")
print("1:增加学员")
print("2:显示全部学员")
print("3:查询学员")
print("4:退出系统")
print("-" * 26)
def add_student():
"""增加学员"""
print("增加学员")
name_str = input("姓名:")
num_str = input("学号:")
phone_str = input("手机号:")
qq_str = input("QQ:")
email_str = input("邮箱:")
temp_dict = {"姓名": name_str,
"学号": num_str,
"手机号": phone_str,
"QQ": qq_str,
"邮箱": email_str}
student_list.append(temp_dict)
print("学员 %s 已经成功添加到系统中。" % name_str)
def display_student():
"""显示全部学员"""
if len(student_list) > 0:
print("显示全部学员")
print("姓名\t\t学号\t\t\t\t手机号\t\t\t\tQQ\t\t\t\t邮箱")
for person_info in student_list:
print("%s\t\t%s\t\t%s\t\t%s\t\t%s" % (person_info["姓名"],
person_info["学号"],
person_info["手机号"],
person_info["QQ"],
person_info["邮箱"]))
else:
print("系统中还没有学员")
def search_student():
"""查询学员"""
print("查询学员")
temp_name = input("请输入您要查询的姓名:")
for temp_dict in student_list:
if temp_dict["姓名"] == temp_name:
print("「学员 %s 个人信息如下」" % temp_name)
print("姓名\t\t学号\t\t手机号\t\tQQ\t\t邮箱")
print("%s\t\t%s\t\t%s\t\t%s\t\t%s" % (temp_dict["姓名"],
temp_dict["学号"],
temp_dict["手机号"],
temp_dict["QQ"],
temp_dict["邮箱"]))
deal_student(temp_dict)
break
else:
print("系统名单中没有 %s 学员,请确认是否输入有误" % temp_name)
def deal_student(temp_dict):
"""修改和删除学员的信息
:param temp_dict: 每个学员的信息字典
"""
deal_num = input("变更学员信息:1-修改,2-删除,0-返回上级菜单。请输入要执行功能的序号:")
if deal_num == "1":
name_new = input_plus(temp_dict["姓名"], "请输入新姓名[回车不修改]:")
num_new = input_plus(temp_dict["学号"], "请输入新学号[回车不修改]:")
phone_new = input_plus(temp_dict["手机号"], "请输入新手机号[回车不修改]:")
qq_new = input_plus(temp_dict["QQ"], "请输入新QQ[回车不修改]:")
email_new = input_plus(temp_dict["邮箱"], "请输入新邮箱[回车不修改]:")
temp_dict["姓名"] = name_new
temp_dict["学号"] = num_new
temp_dict["手机号"] = phone_new
temp_dict["QQ"] = qq_new
temp_dict["邮箱"] = email_new
print("学员 %s 的信息修改成功" % name_new)
elif deal_num == "2":
student_list.remove(temp_dict)
print("学员 %s 的信息删除成功" % temp_dict["姓名"])
def input_plus(dict_value, point_out):
"""学员输入了信息就修改,不输入就不修改
:param dict_value: 键值对的原值
:param point_out: 提示信息
:return:
"""
temp_info = input(point_out)
if len(temp_info) > 0:
return temp_info
else:
return dict_value
"""
3、上机题
定义一个函数,将列表作为参数传递给函数,并对列表元素进行修改。
"""
def modify_list(unmodified_list):
"""修改列表中的元素
:param unmodified_list: 待修改的列表
"""
print("-" * 28)
print("需要修改的列表:")
print(name_list)
print("-" * 28)
while True:
action_num = input("请输入您需要执行的功能:1-修改元素,2-删除元素,0-退出:")
if action_num == "1":
print("修改列表元素")
index = input("请输入需要修改元素的下标:")
if index.isdigit():
content = input("请输入相应的元素内容:")
name_list[int(index)] = content
print("修改后的列表:")
print(unmodified_list)
print("修改成功")
print()
else:
print("您输入有误,下标为整数。")
print()
elif action_num == "2":
print("删除列表元素")
content = input("请输入元素内容:")
if content in name_list:
name_list.remove(content)
print("删除后的列表:")
print(unmodified_list)
print("删除成功")
print()
else:
print("您输入有误,请确认列表中是否有 【%s】" % content)
print()
else:
print("祝生活愉快,欢迎再次使用")
break
name_list = ["张三", "李四", "王五", "陈六", "王八"]
modify_list(name_list)