引言
今天本该是正常9点上班的,结果8点56老板发消息今天调休,我真的谢谢。然后我就抽这个时间把牙给弄了下,夜晚才开始写小项目。好歹最后终于写完了,知识点基本上都用上了。下面是代码。
1.利用面向对象和列表完成学生管理系统
# @Author : 遇见猫
# @Time : 2024/7/19 22:04
students = []
login = False
student = {"username": "狗岁", "password": "123456"}
students.append(student)
class Student():
def __init__(self, name,password):
self.name = name
self.password = password
def select(self,username):
for student in students:
if student["username"] == username:
return student
return None
def insert(self, username, password):
if Student.select(username) is None:
stu = {"username": username, "password": password}
students.append(stu)
else:print("该用户已存在")
def delete(self,username):
stu = Student.select(username)
if stu is not None:
students.remove(stu)
else:print("该用户不存在")
def update(self,username,password):
stu = Student.select(username)
if stu is not None:
stu["password"] = password
else:print("该用户不存在")
while True:
print("欢迎来到学生管理系统")
print("请先登录")
num = 0
while True:
username = input("请输入账号:")
password = input("请输入密码:")
num += 1
stu = Student(username,password)
for i in students:
if i["username"] == username and i["password"] == password:
print("登录成功")
login = True
if num > 5:
print("输入次数过多,退出登录系统")
break
if login == False and num <= 4:
print(f"第{num}次输入错误")
else:
break
print(
"1.查询学生\n"
"2.新增学生\n"
"3.删除学生\n"
"4.修改学生信息\n"
"5.导入导出学生信息\n"
"6.退出系统\n")
choose = input("请输入你要进行的操作:")
if choose == "1":
username = input("请输入你要查询的学生姓名:")
stu = Student.select(username)
print(stu)
elif choose == "2":
username = input("请输入你要增加的学生姓名:")
password = input("请输入你要增加的学生密码:")
Student.insert(username,password)
elif choose == "3":
username = input("请输入你要删除的学生姓名:")
Student.delete(username)
elif choose == "4":
username = input("请输入你要修改的学生姓名:")
password = input("请输入你要修改的学生密码:")
Student.update(username,password)
elif choose == "5":
print("正在导出学生信息")
with open("student.txt","w",encoding="utf-8") as f:
for i in students:
f.write(f"{i['username']},{i['password']}\n")
print("导出成功")
elif choose == "6":
print("正在导入学生信息")
with open("student.txt","r",encoding="utf-8") as f:
for line in f.readlines():
username,password = line.strip().split(",")
Student.insert(username,password)
elif choose == "7":
print("退出系统")
break
2.利用字典和列表完成学生管理系统
# @Author : 遇见猫
# @Time : 2024/7/19 17:39
'''
需求分析
学生管理系统:
使用集合和字典实现对于学员的增删改查
并且实现登录和导入导出功能
'''
import os
# 学生集合
students = list()
# 学生信息
student = {"username": "狗岁", "password": "123456"}
students.append(student)
print(students)
login = False
def IsExist(file):
if os.path.exists(file):
return "a+"
else:
return "w"
while True:
print("欢迎来到学生管理系统")
print("请先登录")
num = 0
while True:
username = input("请输入账号:")
password = input("请输入密码:")
num += 1
for i in students:
if i["username"] == username and i["password"] == password:
print("登录成功")
login = True
if num > 5:
print("输入次数过多,退出登录系统")
break
if login == False and num <= 4:
print(f"第{num}次输入错误")
else:
break
print(
"1.查询学生\n"
"2.新增学生\n"
"3.删除学生\n"
"4.修改学生信息"
"5.导入导出学生信息\n"
"6.退出系统\n")
choose = input("请输入你要进行的操作:")
# 查询
if choose == "1":
username = input("请输入你要查询的学生姓名:")
result = False
for student in students:
if student["username"] == username:
print(student)
result = True
break
if result == False:print("没有找到该学生")
# 新增
elif choose == "2":
username = input("请输入要添加的学生姓名:")
password = str(input("请输入要添加的学生密码:")).strip()
student = {"username": username, "password": password}
students.append(student)
print("目前学生信息:",students)
#删除
elif choose == "3":
username = input("请输入要删除的学生姓名:")
result = False
for student in students:
if student["username"] == username:
students.remove(student)
result = True
break
if result == False: print("没有找到该学生")
elif choose == "4":
username = input("请输入要修改的学生姓名:")
result = False
for student in students:
if student["username"] == username:
student["password"] = input("请输入新的密码:")
result = True
break
if result == False: print("没有找到该学生")
#导出学生名单
elif choose == "5":
result = input("你有两种导出方案:\n"
"1.csv文件\n"
"2.txt文件\n"
"请输入你的方案")
if result == "1":
str1 = IsExist("student.csv")
with open("student.csv", str1,encoding="utf-8") as f:
if str1 == "w":
header = "姓名,密码\n"
f.writelines(header)
for student in students:
f.write(f"{student['username']},{student['password']}\n")
print("生成完毕,请退出系统查看")
elif result == "2":
str2 = IsExist("student.txt")
with open("student.txt", str2,encoding="utf-8") as f:
for student in students:
f.write(f"{student['username']},{student['password']}\n")
print("生成完毕,请退出系统查看")
elif choose == "6":
print("退出系统")
break
else:
print("输入错误,请重新输入")
结语
我不知道接下来是进行python高级学习还是直接进入爬虫阶段的学习,明天看看进程在说吧!今天也是python小白,梦想是月入过万,mai起!