一篇文章教你用Python實現(xiàn)一個學(xué)生管理系統(tǒng)
發(fā)布日期:2022-01-06 16:37 | 文章來源:腳本之家
片頭
Python看了差不多三四天吧,基本上給基礎(chǔ)看差不多了。寫個管理系統(tǒng)吧,后續(xù)不出意外SQL、文件存儲版本都會更。
學(xué)習(xí)Python感想:
人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python Python實在太爽了
源碼:
使用Python3
'''
學(xué)生成績管理系統(tǒng)
時間:2021.9.9
作者:sunbeam
'''
import time
import os
student_list = [] #定義一個列表類型全局變量
'''
列表里面存儲所有學(xué)生信息,列表里面每個元素是一個字典,字典里面存放每一個學(xué)生的個人信息,存儲結(jié)構(gòu)如下
[(姓名1,年齡1,學(xué)號1,手機(jī)號碼1),(姓名2,年齡2,學(xué)號2,手機(jī)號碼2)......]
'''
def time_day():
print()
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())))
#主菜單界面
def std_menu():
print("--------歡迎來到sunbeam的第一個python學(xué)生管理系統(tǒng)--------")
print(" 1、添加學(xué)生信息 2、刪除學(xué)生信息 ")
print(" 3、查找學(xué)生信息 4、修改學(xué)生信息 ")
print(" 5、顯示所有學(xué)生 6、退出系統(tǒng) ")
num=int(input("根據(jù)需求請輸入對應(yīng)的序號:"))
return num
#添加學(xué)生信息
def std_add():
while 1:
std_name = input("請輸入要添加的學(xué)生的姓名:")
std_old = input("請輸入要添加的學(xué)生的年齡:")
std_id = input("請輸入要添加的學(xué)生的學(xué)號:")
std_tel = input("請輸入要添加的學(xué)生的電話號碼:")
global student_list
# 判斷學(xué)生是否已存在,如果姓名和學(xué)號都重復(fù)說明學(xué)生存在
for i in student_list:
if (i['name'] == std_name) and (i['id'] == std_id):
print("此學(xué)生信息已存在")
return
#如果學(xué)生信息不存在則添加學(xué)生信息
std_message = {} #創(chuàng)建一個空的字典
std_message['name']=std_name
std_message['old']=std_old
std_message['id']=std_id
std_message['tel']=std_tel
student_list.append(std_message)
text=input("是否繼續(xù)添加:YES or NO")
if text=='NO':
os.system('cls')
break
else:
os.system('cls')
continue
#查找學(xué)生信息
def std_find():
flag=0
while 1:
find_name = input("請輸入你要查詢的學(xué)生的姓名:")
global student_list
for i in student_list:
if (i['name'] == find_name):
print("查詢到如下學(xué)生:")
print("-------------------")
print(f"姓名:{i['name']}")
print(f"年齡:{i['old']}")
print(f"學(xué)號:{i['id']}")
print(f"電話:{i['tel']}")
print("-------------------")
flag=1
if flag==0:
print("查無此人")
lk=input("是否繼續(xù)查找:YES or NO")
if lk=="NO":
os.system('cls')
break
else:
os.system('cls')
continue
#修改學(xué)生信息
def std_modify():
while 1:
find_name=input("請輸入要修改的學(xué)生的學(xué)號:")
global student_list
for i in student_list:
if (i['id']==find_name):
print("你要修改的學(xué)生信息如下:")
print("-------------------")
print(f"姓名:{i['name']}")
print(f"年齡:{i['old']}")
print(f"學(xué)號:{i['id']}")
print(f"電話:{i['tel']}")
print('-----------------')
while 1:
print(" 1、修改學(xué)生姓名2、修改學(xué)生年齡 ")
print(" 3、修改學(xué)生學(xué)號4、修改學(xué)生電話 ")
modify_num = int(input('請輸入要修改的項目序號:'))
if modify_num==1:modify_name=input("請輸入要修改的學(xué)生的姓名:")i['name']=modify_name
elif modify_num==2:modify_old=input("請輸入要修改的學(xué)生的年齡:")i['old']=modify_old
elif modify_num==3:modify_id=input("請輸入要修改的學(xué)生的學(xué)號:")i['id']=modify_id
else:modify_tel=input("請輸入要修改的學(xué)的生電話:")i['tel']=modify_tel
print("是否繼續(xù)修改當(dāng)前學(xué)生信息:YES or NO")
print('---------------------')
modify_flag=input()
if modify_flag=="NO":print("-----修改完成-----")break
else:continue
break
print("是否繼續(xù)使用修改模塊功能:YES or NO")
lag=input()
if lag=="YES":
os.system('cls')
continue
else:
os.system('cls')
break
#顯示所有學(xué)生信息
def std_all():
global student_list
print('姓名\t年齡\t學(xué)號\t電話')
for i in student_list:
print(f"{i['name']}\t{i['old']}\t{i['id']}\t{i['tel']}")
#刪除函數(shù)
def std_delete():
global student_list
while 1:
print("-----------------")
del_num = input("請輸入要刪除的學(xué)生的學(xué)號:")
for i in student_list:
if (i['id'] == del_num):
student_list.remove(i)
print("刪除成功")
break
else:
print("查無此人")
del_exit=input("是否退出:YES or NO")
print("-----------------")
if del_exit=='YES':
os.system('cls')
break
else:
os.system('cls')
continue
while 1:
time_day()
user_num=std_menu()
if user_num==1:
std_add()
elif user_num==2:
std_delete()
elif user_num==3:
std_find()
elif user_num==4:
std_modify()
elif user_num==5:
std_all()
elif user_num==6:
os.system('cls')
exit_flag=input("是否退出:YES or NO")
if exit_flag=='YES':
print("感謝使用,bey-bey")
break
else:
continue
else:
print("輸入無用序號,請輸入菜單前序號。")
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注本站的更多內(nèi)容!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
相關(guān)文章
關(guān)注官方微信