python學(xué)生管理系統(tǒng)
這幾天開始接觸了python語言,這語言相對c語言簡潔了不少,語言真是一通百通,學(xué)起來還是比較輕松,在熟悉了基本語法,列表(序列),元組以及字典之后寫了一個(gè)最基礎(chǔ)簡單的的學(xué)生管理系統(tǒng)
能完成的功能有:
學(xué)生管理系統(tǒng) v1.0
1.添加學(xué)生的信息
2.刪除學(xué)生的信息
3.修改學(xué)生的信息
4.查詢學(xué)生的信息
5.遍歷所有學(xué)生的信息
6.退出系統(tǒng)
學(xué)生信息中,學(xué)號是唯一的,所以進(jìn)行刪除,修改,查詢都會有學(xué)號的唯一的檢測
1.框架顯示以及添加學(xué)生的功能

2.添加兩個(gè)學(xué)生之后,進(jìn)行顯示功能

3.刪除功能,以及其他也都有學(xué)號唯一檢測功能!

4.修改信息功能

5.查詢信息以及退出界面

接下來是代碼
#encoding utf=8
#定義一個(gè)函數(shù),顯示可以使用的功能列表給用戶
def showInfo():
print("-"*30)
print(" 學(xué)生管理系統(tǒng) v1.0")
print(" 1.添加學(xué)生的信息")
print(" 2.刪除學(xué)生的信息")
print(" 3.修改學(xué)生的信息")
print(" 4.查詢學(xué)生的信息")
print(" 5.遍歷所有學(xué)生的信息")
print(" 6.退出系統(tǒng)")
print( '-'*30)
#定義一個(gè)列表,用來存儲多個(gè)學(xué)生的信息
students=[]
while True:
#把功能列表進(jìn)行顯示給用戶
showInfo()
#提示用戶選擇功能
#獲取用戶選擇的功能
key = int(input("請選擇功能(序號):"))
#根據(jù)用戶選擇,完成相應(yīng)功能
if key == 1:
print("您選擇了添加學(xué)生信息功能")
name = input("請輸入學(xué)生姓名:")
stuId = input("請輸入學(xué)生學(xué)號(學(xué)號不可重復(fù)):")
age = input("請輸入學(xué)生年齡:")
#驗(yàn)證學(xué)號是否唯一
i = 0
leap = 0
for temp in students:
if temp['id'] == stuId:
leap = 1
break
else:
i = i + 1
if leap == 1:
print("輸入學(xué)生學(xué)號重復(fù),添加失敗!")
break
else:
# 定義一個(gè)字典,存放單個(gè)學(xué)生信息
stuInfo = {}
stuInfo['name'] = name
stuInfo['id'] = stuId
stuInfo['age'] = age
# 單個(gè)學(xué)生信息放入列表
students.append(stuInfo)
print("添加成功!")
elif key == 2:
print("您選擇了刪除學(xué)生功能")
delId=input("請輸入要刪除的學(xué)生學(xué)號:")
#i記錄要刪除的下標(biāo),leap為標(biāo)志位,如果找到leap=1,否則為0
i = 0
leap = 0
for temp in students:
if temp['id'] == delId:
leap = 1
break
else:
i=i+1
if leap == 0:
print("沒有此學(xué)生學(xué)號,刪除失敗!")
else:
del students[i]
print("刪除成功!")
elif key == 3:
print("您選擇了修改學(xué)生信息功能")
alterId=input("請輸入你要修改學(xué)生的學(xué)號:")
#檢測是否有此學(xué)號,然后進(jìn)行修改信息
i = 0
leap = 0
for temp in students:
if temp['id'] == alterId:
leap = 1
break
else:
i = i + 1
if leap == 1:
while True:
alterNum=int(input(" 1.修改學(xué)號\n 2.修改姓名 \n 3.修改年齡 \n 4.退出修改\n"))
if alterNum == 1:
newId=input("輸入更改后的學(xué)號:")
#修改后的學(xué)號要驗(yàn)證是否唯一
i = 0
leap1 = 0
for temp1 in students:
if temp1['id'] == newId:
leap1 = 1
break
else:
i = i + 1
if leap1 == 1:
print("輸入學(xué)號不可重復(fù),修改失?。?)
else:
temp['id']=newId
print("學(xué)號修改成功")
elif alterNum == 2:
newName=input("輸入更改后的姓名:")
temp['name'] = newName
print("姓名修改成功")
elif alterNum == 3:
newAge=input("輸入更改后的年齡:")
temp['age'] = newAge
print("年齡修改成功")
elif alterNum == 4:
break
else:
print("輸入錯(cuò)誤請重新輸入")
else:
print("沒有此學(xué)號,修改失??!")
elif key == 4:
print("您選擇了查詢學(xué)生信息功能")
searchID=input("請輸入你要查詢學(xué)生的學(xué)號:")
#驗(yàn)證是否有此學(xué)號
i = 0
leap = 0
for temp in students:
if temp['id'] == searchID:
leap = 1
break
else:
i = i + 1
if leap == 0:
print("沒有此學(xué)生學(xué)號,查詢失敗!")
else:
print("找到此學(xué)生,信息如下:")
print("學(xué)號:%s\n姓名:%s\n年齡:%s\n"%(temp['id'],temp['name'],temp['age']))
elif key == 5:
#遍歷并輸出所有學(xué)生的信息
print('*'*20)
print("接下來進(jìn)行遍歷所有的學(xué)生信息...")
print("id 姓名 年齡")
for temp in students:
print("%s %s %s"%(temp['id'],temp['name'],temp['age']))
print("*"*20)
elif key == 6:
#退出功能,盡量往不退出的方向引
quitconfirm = input("親,真的要退出么 (yes或者no)??~~(>_<)~~??")
if quitconfirm == 'yes':
print("歡迎使用本系統(tǒng),謝謝")
break;
else:
print("您輸入有誤,請重新輸入")
一些功能模塊在后續(xù)會做成函數(shù)調(diào)用的方式,可以使程序看起來更加簡潔。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python初學(xué)者,用python實(shí)現(xiàn)基本的學(xué)生管理系統(tǒng)(python3)代碼實(shí)例
- python學(xué)生管理系統(tǒng)學(xué)習(xí)筆記
- Python基于mysql實(shí)現(xiàn)學(xué)生管理系統(tǒng)
- python Tkinter版學(xué)生管理系統(tǒng)
- python學(xué)生管理系統(tǒng)開發(fā)
- 基于python實(shí)現(xiàn)學(xué)生管理系統(tǒng)
- python實(shí)現(xiàn)學(xué)生管理系統(tǒng)
- python版學(xué)生管理系統(tǒng)
- python學(xué)生管理系統(tǒng)代碼實(shí)現(xiàn)
- 詳解用python實(shí)現(xiàn)基本的學(xué)生管理系統(tǒng)(文件存儲版)(python3)
相關(guān)文章
python實(shí)時(shí)監(jiān)控cpu小工具
這篇文章主要為大家詳細(xì)介紹了python實(shí)時(shí)監(jiān)控cpu的小工具,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06
python學(xué)習(xí)基礎(chǔ)之循環(huán)import及import過程
python中的import語句是用來導(dǎo)入模塊的,下面這篇文章主要給大家介紹了關(guān)于python學(xué)習(xí)基礎(chǔ)之循環(huán)import及import過程的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04
python獲取100以內(nèi)的質(zhì)數(shù)3種方式總結(jié)
質(zhì)數(shù)也稱為質(zhì)數(shù),具有無限個(gè),質(zhì)數(shù)定義為大于1的自然數(shù),除了1和它本省外沒有其他因數(shù)的數(shù)稱為質(zhì)數(shù),這篇文章主要給大家介紹了關(guān)于python獲取100以內(nèi)質(zhì)數(shù)的3種方式,需要的朋友可以參考下2024-08-08
Django ORM數(shù)據(jù)庫操作處理全面指南
本文深度探討Django ORM的概念、基礎(chǔ)使用、進(jìn)階操作以及詳細(xì)解析在實(shí)際使用中如何處理數(shù)據(jù)庫操作,同時(shí),我們還討論了模型深入理解,如何進(jìn)行CRUD操作,并且深化理解到數(shù)據(jù)庫遷移等高級主題2023-09-09
Python使用xlrd和xlwt批量讀寫excel文件的示例代碼
這篇文章主要介紹了Python使用xlrd和xlwt批量讀寫excel文件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
win10下Python3.6安裝、配置以及pip安裝包教程
下面小編就為大家?guī)硪黄獁in10下Python3.6安裝、配置以及pip安裝包教程。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
這篇文章主要介紹了TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
詳解利用python+opencv識別圖片中的圓形(霍夫變換)
這篇文章主要介紹了詳解利用python+opencv識別圖片中的圓形(霍夫變換),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

