寫這篇文章的主要目的,主要是給大家做一個解答,解答一下怎么使用python,以此來實現(xiàn)簡單的學(xué)生操作管理系統(tǒng)制作。
一、系統(tǒng)簡介
實現(xiàn)一個學(xué)生信息的管理系統(tǒng):主要功能有:
添加學(xué)生信息
刪除學(xué)生信息
修改學(xué)生信息
查詢學(xué)生信息
顯示學(xué)生信息
退出當(dāng)前系統(tǒng)
二、步驟分析
顯示功能界面
用戶輸入功能序號
對不同序號的功能實現(xiàn)具體函數(shù)(3.1定義函數(shù)、3.2調(diào)用函數(shù))
三、需求實現(xiàn)
顯示功能界面info_print()
用戶輸入功能序號user_num=eval(input('請輸入功能序號:'))
按照用戶輸入的功能序號,執(zhí)行不同的功能(函數(shù))
添加學(xué)生信息add_info()
刪除學(xué)生信息del_info()
修改學(xué)生信息modify_info()
查詢學(xué)生信息search_info()
顯示學(xué)生信息print_all()
四、具體實現(xiàn)
系統(tǒng)功能需要循環(huán)使用,直到用戶輸入6,才退出系統(tǒng)功能界面部分:
#定義一個函數(shù) def info_print(): print('--------請選擇功能-----') print('1、添加學(xué)生') print('2、刪除學(xué)生') print('3、修改學(xué)生') print('4、查詢學(xué)生') print('5、顯示所有學(xué)生') print('6、退出系統(tǒng)') print('-'*20) #等待存儲所有學(xué)生的信息 info=[]
主要部分代碼:
while True: #1、顯示功能界面 info_print() #2、用戶輸入功能序號 user_num=eval(input('請輸入功能序號:')) #3、按照用戶輸入的功能序號,執(zhí)行不同的功能(函數(shù)) #如果用戶輸入1,就執(zhí)行添加學(xué)生的功能 if user_num==1: #print('添加學(xué)生') elif user_num==2: #print('刪除學(xué)生') elif user_num==3: #print('修改學(xué)生') elif user_num==4: #print('查詢學(xué)生') elif user_num==5: #print('顯示所有學(xué)生') elif user_num==6: exit_flag=input("確定要退出嗎?yes/no?") if exit_flag=='yes': break #print('退出系統(tǒng)') else: print('輸入的功能序號有誤!')
那么根據(jù)上面的代碼,需要實現(xiàn)具體的功能函數(shù),主要代碼部分如下:
while True: #1、顯示功能界面 info_print() #2、用戶輸入功能序號 user_num=eval(input('請輸入功能序號:')) #3、按照用戶輸入的功能序號,執(zhí)行不同的功能(函數(shù)) #如果用戶輸入1,就執(zhí)行添加學(xué)生的功能 if user_num==1: add_info() #print('添加學(xué)生') elif user_num==2: del_info() #print('刪除學(xué)生') elif user_num==3: modify_info() #print('修改學(xué)生') elif user_num==4: search_info() #print('查詢學(xué)生') elif user_num==5: print_all() #print('顯示所有學(xué)生') elif user_num==6: exit_flag=input("確定要退出嗎?yes/no?") if exit_flag=='yes': break #print('退出系統(tǒng)') else: print('輸入的功能序號有誤!')
4.1添加學(xué)生信息的函數(shù)
def add_info(): """添加學(xué)生函數(shù)""" #接受用戶輸入學(xué)生信息 #1、用戶輸入:學(xué)號、姓名、手機號 new_id=input("輸入學(xué)號:") new_name=input("輸入姓名:") new_tel=input("輸入手機號:") #2、判斷是否添加這個學(xué)生,如果學(xué)生姓名已經(jīng)存在報錯提示,如果不存在則添加數(shù)據(jù) global info #2.1不允許姓名重復(fù):判斷用戶輸入的姓名如果和列表里面字典的name值是相等的,則提示姓名重復(fù) for i in info: if new_name==i['name']: print("此用戶已經(jīng)存在,請勿重復(fù)添加") #return退出當(dāng)前函數(shù),后面添加信息的代碼不執(zhí)行 return #如果用戶輸入的姓名不存在,則添加該學(xué)生信息 info_dict={<!---->'id':new_id,'name':new_name,'tel':new_tel} #將用戶輸入的數(shù)據(jù)追加到字典 #將這個學(xué)生的字典數(shù)據(jù)追加到列表 info.append(info_dict) print(info)
4.2刪除學(xué)生信息的函數(shù)
def del_info(): """刪除學(xué)生""" #1、用戶輸入要刪除的學(xué)生的姓名 del_name=input("請輸入要刪除的學(xué)生的姓名:") global info #2、判斷學(xué)生是否存在 #2.1聲明info是全局變量 #2.2遍歷列表 #2.3判斷學(xué)生是否存在,存在則執(zhí)行刪除信息,break:不允許重名,那么刪除了一個,后面的不需要再遍歷;不存在則提示 for i in info: if del_name==i['name']: info.remove(i) break else: print('該學(xué)生不存在!') print(info)
4.3修改學(xué)生信息的函數(shù)
def modify_info(): """修改函數(shù)""" #1、用戶輸入要修改的學(xué)生的姓名 modify_name=input("請輸入要修改的學(xué)生的姓名:") global info #2、判斷學(xué)生是否存在,如果輸入的姓名存在則修改手機號,否則則提示 for i in info: if modify_name==i['name']: i['tel']=input("請輸入新的手機號:") break else: print("該學(xué)生不存在") print(info)
4.4查詢學(xué)生信息的函數(shù)
def search_info(): """查詢學(xué)生信息""" #1、輸入要查找的學(xué)生姓名 search_name=input("請輸入要查找的學(xué)生姓名:") global info #2、判斷學(xué)生是否存在,如果輸入的姓名存在則顯示該學(xué)生的信息,否則則提示 for i in info: if search_name==i['name']: print("找到該學(xué)生的信息如下:") print(f"該學(xué)生的學(xué)號是{i['id']},姓名是{i['name']},手機號是{i['tel']}") break else: print("該學(xué)生不存在!")
4.5顯示所有學(xué)生信息
def print_all(): """顯示所有學(xué)生信息""" print('學(xué)號t姓名t手機號') for i in info: print(f"{i['id']}t{i['name']}t{i['tel']}")
五、運行效果
添加和刪除學(xué)生信息:
修改和查詢學(xué)生信息
顯示所有學(xué)生信息和退出系統(tǒng)
六、完整代碼
#定義一個函數(shù) def info_print(): print('--------請選擇功能-----') print('1、添加學(xué)生') print('2、刪除學(xué)生') print('3、修改學(xué)生') print('4、查詢學(xué)生') print('5、顯示所有學(xué)生') print('6、退出系統(tǒng)') print('-'*20) #等待存儲所有學(xué)生的信息 info=[] #1、添加學(xué)生信息的函數(shù) def add_info(): """添加學(xué)生函數(shù)""" #接受用戶輸入學(xué)生信息 #1、用戶輸入:學(xué)號、姓名、手機號 new_id=input("輸入學(xué)號:") new_name=input("輸入姓名:") new_tel=input("輸入手機號:") #2、判斷是否添加這個學(xué)生,如果學(xué)生姓名已經(jīng)存在報錯提示,如果不存在則添加數(shù)據(jù) global info #2.1不允許姓名重復(fù):判斷用戶輸入的姓名如果和列表里面字典的name值是相等的,則提示姓名重復(fù) for i in info: if new_name==i['name']: print("此用戶已經(jīng)存在,請勿重復(fù)添加") #return退出當(dāng)前函數(shù),后面添加信息的代碼不執(zhí)行 return #如果用戶輸入的姓名不存在,則添加該學(xué)生信息 info_dict={<!---->'id':new_id,'name':new_name,'tel':new_tel} #將用戶輸入的數(shù)據(jù)追加到字典 #將這個學(xué)生的字典數(shù)據(jù)追加到列表 info.append(info_dict) print(info) #2、刪除學(xué)生的信息 def del_info(): """刪除學(xué)生""" #1、用戶輸入要刪除的學(xué)生的姓名 del_name=input("請輸入要刪除的學(xué)生的姓名:") global info #2、判斷學(xué)生是否存在 #2.1聲明info是全局變量 #2.2遍歷列表 #2.3判斷學(xué)生是否存在,存在則執(zhí)行刪除信息,break:不允許重名,那么刪除了一個,后面的不需要再遍歷;不存在則提示 for i in info: if del_name==i['name']: info.remove(i) break else: print('該學(xué)生不存在!') print(info) #3、修改學(xué)生的信息 def modify_info(): """修改函數(shù)""" #1、用戶輸入要修改的學(xué)生的姓名 modify_name=input("請輸入要修改的學(xué)生的姓名:") global info #2、判斷學(xué)生是否存在,如果輸入的姓名存在則修改手機號,否則則提示 for i in info: if modify_name==i['name']: i['tel']=input("請輸入新的手機號:") break else: print("該學(xué)生不存在") print(info) #4、查詢學(xué)生信息 def search_info(): """查詢學(xué)生信息""" #1、輸入要查找的學(xué)生姓名 search_name=input("請輸入要查找的學(xué)生姓名:") global info #2、判斷學(xué)生是否存在,如果輸入的姓名存在則顯示該學(xué)生的信息,否則則提示 for i in info: if search_name==i['name']: print("找到該學(xué)生的信息如下:") print(f"該學(xué)生的學(xué)號是{i['id']},姓名是{i['name']},手機號是{i['tel']}") break else: print("該學(xué)生不存在!") #5、顯示所有學(xué)生信息 def print_all(): """顯示所有學(xué)生信息""" print('學(xué)號t姓名t手機號') for i in info: print(f"{i['id']}t{i['name']}t{i['tel']}") #系統(tǒng)功能需要循環(huán)使用,直到用戶輸入6,才退出系統(tǒng) while True: #1、顯示功能界面 info_print() #2、用戶輸入功能序號 user_num=eval(input('請輸入功能序號:')) #3、按照用戶輸入的功能序號,執(zhí)行不同的功能(函數(shù)) #如果用戶輸入1,就執(zhí)行添加學(xué)生的功能 if user_num==1: add_info() #print('添加學(xué)生') elif user_num==2: del_info() #print('刪除學(xué)生') elif user_num==3: modify_info() #print('修改學(xué)生') elif user_num==4: search_info() #print('查詢學(xué)生') elif user_num==5: print_all() #print('顯示所有學(xué)生') elif user_num==6: exit_flag=input("確定要退出嗎?yes/no?") if exit_flag=='yes': break #print('退出系統(tǒng)') else: print('輸入的功能序號有誤!')
以上關(guān)于python搭建學(xué)生管理系統(tǒng)就為大家介紹到這里了,希望可以給各位讀者帶來幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/127752.html
摘要:如上海北京等管理員自己創(chuàng)建其他地方的學(xué)校管理員創(chuàng)建的課程。包含名字性別年齡等學(xué)員查詢可上課程學(xué)員選課,選擇學(xué)校課程,并付款。課程價格,周期課程價格,周期課程價格,周期創(chuàng)建講師屬于北京校區(qū),屬于上海校區(qū)。 作業(yè)需求 創(chuàng)建北京、上海 2 所學(xué)校 創(chuàng)建linux , python , go 3個課程,linuxpy在北京開, go 在上海開 課程包含,周期,價格,通過學(xué)校創(chuàng)建課程 通過學(xué)校...
摘要:年,第一個編譯器誕生。它是用語言實現(xiàn)的,并能夠調(diào)用語言的庫文件。榮登年年度最佳編程語言,很多大公司,包括都大量的使用。 文章目錄 1.1. Python的誕生1....
摘要:一面向?qū)ο缶幊?。是一門面向?qū)ο蟮木幊陶Z言,通過對象實現(xiàn)對方法的調(diào)用。面向過程的程序設(shè)計把計算機程序視為一系列的命令集合,即一組函數(shù)的順序執(zhí)行。對于面向?qū)ο笳Z言,重要的概念是類和實例。 一、preface 面向?qū)ο缶幊蘋OP:object oriented programming。OOP把對象作為程序的基本單元,一個對象包含了數(shù)據(jù)和操作數(shù)據(jù)的函數(shù)。Python是一門面向?qū)ο蟮木幊陶Z言,...
摘要:解決按學(xué)生年齡排序的實際問題問題定義一個包含姓名性別年齡,需要按年齡給學(xué)生排序。輸出按照年齡進(jìn)行排序好的。思路使用冒泡排序,比較相鄰的學(xué)生,如果第一個學(xué)生的值比第二個學(xué)生的值大,那么就整體交換這兩個元素。 Python解決按學(xué)生年齡排序的實際問題 問題:定義一個Class:包含姓名name、性別gender、年齡age,需要按年齡給學(xué)生排序。輸入:包含學(xué)生對象的List。輸出:按照年齡...
摘要:輔之以事件循環(huán),協(xié)程可用于異步處理,尤其是在中。當(dāng)前支持的協(xié)程基于增強型生成器,于版本開始采用。新的特性中,異步還有兩種新用途異步內(nèi)容管理器和迭代器。 現(xiàn)在 Python 已經(jīng)支持用協(xié)程進(jìn)行異步處理。但最近有建議稱添加協(xié)程以全面完善 Python 的語言結(jié)構(gòu),而不是像現(xiàn)在這樣把他們作為生成器的一個類型。此外,兩個新的關(guān)鍵字———異步(async)和等待(await),都該添加到 Pyt...
閱讀 923·2023-01-14 11:38
閱讀 895·2023-01-14 11:04
閱讀 756·2023-01-14 10:48
閱讀 2055·2023-01-14 10:34
閱讀 961·2023-01-14 10:24
閱讀 840·2023-01-14 10:18
閱讀 510·2023-01-14 10:09
閱讀 588·2023-01-14 10:02