濮阳杆衣贸易有限公司

主頁 > 知識庫 > 教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)

教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)

熱門標(biāo)簽:北京電信外呼系統(tǒng)靠譜嗎 地圖標(biāo)注視頻廣告 洪澤縣地圖標(biāo)注 百度地圖標(biāo)注位置怎么修改 梅州外呼業(yè)務(wù)系統(tǒng) 高德地圖標(biāo)注是免費(fèi)的嗎 無錫客服外呼系統(tǒng)一般多少錢 老人電話機(jī)器人 大連crm外呼系統(tǒng)

一、項(xiàng)目分析

1、首先定義一個(gè)存放基礎(chǔ)學(xué)生信息列表

格式:list = [{學(xué)號:姓名,年齡:num,成績:num },{……}]

student1 = [\

            {1:"jam",'age':17,'socer':99},
            {2:'kol','age':18,'socer':89},
            {3:'avlir','age':19,'socer':100}]

2、先搭建框架(主函數(shù)main())

if __name__ == '__main__':
    while True:
        menu()
        key = input("輸入選項(xiàng)數(shù)字 查詢/輸入 信息:")
        if key == '1':
            lookup() #打印指定學(xué)生信息
        elif key == '2':
            append() #添加新的學(xué)生信息
        elif key == '3':
            delete() #刪除指定學(xué)生信息
        elif key == '4':
            allinformation() #打印所有信息
        elif key == '5':
            revise() #修改指定學(xué)生信息
        elif key == '6':
            save() #保存信息
        elif key == '0':
            print("確定退出?")
            exit = input("輸入yes退出:")
            if exit == 'yes':
                break
            else:
                print("輸入錯(cuò)誤,返回 ")

3、搭建好框架之后,這時(shí)候發(fā)現(xiàn)需要一個(gè)菜單界面(menu())

#頁面
def menu():
    print('-'*30)
    print("歡迎來到學(xué)生管理系統(tǒng)")
    print("1.輸入學(xué)號查詢成績")
    print("2.添加學(xué)生信息")
    print("3.刪除學(xué)生信息")
    print("4.打印所有學(xué)生信息")
    print("5.修改學(xué)生信息")
    print("6.保存學(xué)生信息到指定文件")
    print("0.退出系統(tǒng)")
    print("-"*30)

4、接下來就是查詢指定學(xué)生信息(lookup())。

列表下標(biāo)從0開始,所以這里在輸入學(xué)號后面加了 “-1” 

#打印信息
def lookup():
    sid = int(input("輸入查詢學(xué)號:"))-1 #學(xué)號
    if sid > len(student1)-1:
        print("輸入錯(cuò)誤,返回菜單")
    else:
        print(student1[sid]) #輸出信息
    input("按回車鍵繼續(xù)")

5、接下來是添加學(xué)生信息(append())

因?yàn)榱斜碓厥怯米值浯鎯?,所以這里用到字典的添加元素

#添加信息
def append():
    newsid = eval(input('輸入新同學(xué)學(xué)號(從4開始):'))
    newname = eval(input('輸入新同學(xué)姓名:'))
    newage = eval(input('輸入新同學(xué)年齡:'))
    newsocer = eval(input('輸入新同學(xué)成績:'))
    newstudent1 = {}
    newstudent1[newsid] = newname #添加 學(xué)號、姓名
    newstudent1['age'] = newage #添加年齡
    newstudent1['socer'] = newsocer #添加成績
    student1.append(newstudent1) #加入列表
    input("按回車鍵繼續(xù)")

6、能添加也就能刪除(delete())

#刪除信息
def delete():
    did = int(input("輸入需要?jiǎng)h除的成績對應(yīng)的學(xué)號:"))-1
    del student1[did] #刪除指定信息
    input("按回車鍵繼續(xù)")

7、然后就是輸出所有信息(allinformation())

這里遍歷輸出列表元素時(shí),用到了格式化字符串的函數(shù) str.format()

##輸出所有學(xué)生信息
def allinformation():
    print("所有信息如下:")
    i = 1
    for show in student1:
        print("{}".format(show)) #打印學(xué)生信息
        i += 1
    input("按回車鍵繼續(xù)")

8、現(xiàn)在還差修改信息(revise())

也是字典修改值得方法,通過鍵來修改對應(yīng)值

##修改信息
def revise():
    resid = int(input("輸入要修改的學(xué)生學(xué)號:"))-1    
    r = input("要修改的對象(1.年齡;2.成績;否則,都修改):")
    if r == '1':
        newage = input("修改后的年齡")
        student1[resid]['age'] = newage
    elif r == '2':
        newsocer = input("修改后的成績")
        student1[resid]['socer'] = newsocer
    else:
        newage = input("修改后的年齡")
        newsocer = input("修改后的成績")
        student1[resid]['socer'] = newsocer
        student1[resid]['age'] = newage
    input("按回車鍵繼續(xù)")

9、差點(diǎn)忘了還得保存一下信息……(save())

我把它保存在與代碼同一文件中student.txt文件中,引入路徑時(shí)需要絕對路徑

##保存學(xué)生信息
def save():
    f = open('student.txt','w') #打開文件
    f.write(str(student1)) #寫入文件
    f.close() #關(guān)閉文件
    input("保存成功按回車鍵繼續(xù)")

然后,完整代碼如下:

'''
Created on 2021年6月13日
學(xué)生信息系統(tǒng)
列表存儲學(xué)生信息,通過字典——鍵進(jìn)行學(xué)生信息訪問
@author: 小天
'''
 
student1 = [\

            {1:"jam",'age':17,'socer':99},
            {2:'kol','age':18,'socer':89},
            {3:'avlir','age':19,'socer':100}]
#頁面
def menu():
    print('-'*30)
    print("歡迎來到學(xué)生管理系統(tǒng)")
    print("1.輸入學(xué)號查詢成績")
    print("2.添加學(xué)生信息")
    print("3.刪除學(xué)生信息")
    print("4.打印所有學(xué)生信息")
    print("5.修改學(xué)生信息")
    print("6.保存學(xué)生信息到指定文件")
    print("0.退出系統(tǒng)")
    print("-"*30)
#打印信息
def lookup():
    sid = int(input("輸入查詢學(xué)號:"))-1 #學(xué)號
    if sid > len(student1)-1:
        print("輸入錯(cuò)誤,返回菜單")
    else:
        print(student1[sid]) #輸出信息
    input("按回車鍵繼續(xù)")
#添加信息
def append():
    newsid = eval(input('輸入新同學(xué)學(xué)號(從4開始):'))
    newname = eval(input('輸入新同學(xué)姓名:'))
    newage = eval(input('輸入新同學(xué)年齡:'))
    newsocer = eval(input('輸入新同學(xué)成績:'))
    newstudent1 = {}
    newstudent1[newsid] = newname #添加 學(xué)號、姓名
    newstudent1['age'] = newage #添加年齡
    newstudent1['socer'] = newsocer #添加成績
    student1.append(newstudent1) #加入列表
    input("按回車鍵繼續(xù)")
 
#刪除信息
def delete():
    did = int(input("輸入需要?jiǎng)h除的成績對應(yīng)的學(xué)號:"))-1
    del student1[did] #刪除指定信息
    input("按回車鍵繼續(xù)")
 
##輸出所有學(xué)生信息
def allinformation():
    print("所有信息如下:")
    i = 1
    for show in student1:
        print("{}".format(show)) #打印學(xué)生信息
        i += 1
    input("按回車鍵繼續(xù)")
 
##修改信息
def revise():
    resid = int(input("輸入要修改的學(xué)生學(xué)號:"))-1    
    r = input("要修改的對象(1.年齡;2.成績;否則,都修改):")
    if r == '1':
        newage = input("修改后的年齡")
        student1[resid]['age'] = newage
    elif r == '2':
        newsocer = input("修改后的成績")
        student1[resid]['socer'] = newsocer
    else:
        newage = input("修改后的年齡")
        newsocer = input("修改后的成績")
        student1[resid]['socer'] = newsocer
        student1[resid]['age'] = newage
    input("按回車鍵繼續(xù)")
    
##保存學(xué)生信息
def save():
    f = open('student.txt','w') #打開文件
    f.write(str(student1)) #寫入文件
    f.close() #關(guān)閉文件
    input("保存成功按回車鍵繼續(xù)")
    
if __name__ == '__main__':
    while True:
        menu()
        key = input("輸入選項(xiàng)數(shù)字 查詢/輸入 信息:")
        if key == '1':
            lookup() #打印指定學(xué)生信息
        elif key == '2':
            append() #添加新的學(xué)生信息
        elif key == '3':
            delete() #刪除指定學(xué)生信息
        elif key == '4':
            allinformation() #打印所有信息
        elif key == '5':
            revise() #修改指定學(xué)生信息
        elif key == '6':
            save() #保存信息
        elif key == '0':
            print("確定退出?")
            exit = input("輸入yes退出:")
            if exit == 'yes':
                break
            else:
                print("輸入錯(cuò)誤,返回 ")

輸出示例:

------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:2
輸入新同學(xué)學(xué)號(從4開始):4
輸入新同學(xué)姓名:'dfg'
輸入新同學(xué)年齡:17
輸入新同學(xué)成績:78
按回車鍵繼續(xù)
------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:4
所有信息如下:
{1: 'jam', 'age': 17, 'socer': 99}
{2: 'kol', 'age': 18, 'socer': 89}
{3: 'avlir', 'age': 19, 'socer': 100}
{4: 'dfg', 'age': 17, 'socer': 78}
按回車鍵繼續(xù)
------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:3
輸入需要?jiǎng)h除的成績對應(yīng)的學(xué)號:4
按回車鍵繼續(xù)
------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來到學(xué)生管理系統(tǒng)
1.輸入學(xué)號查詢成績
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:0
確定退出?
輸入yes退出:yes

到此這篇關(guān)于教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)的文章就介紹到這了,更多相關(guān)Python學(xué)生信息管理系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python函數(shù)實(shí)現(xiàn)學(xué)員管理系統(tǒng)
  • python面向?qū)ο蟀鎸W(xué)生信息管理系統(tǒng)
  • Python實(shí)現(xiàn)學(xué)生管理系統(tǒng)(面向?qū)ο蟀?
  • python學(xué)生信息管理系統(tǒng)實(shí)現(xiàn)代碼
  • 教你用python實(shí)現(xiàn)一個(gè)無界面的小型圖書管理系統(tǒng)
  • 基于Python實(shí)現(xiàn)的購物商城管理系統(tǒng)
  • 一篇文章教你用Python實(shí)現(xiàn)一個(gè)學(xué)生管理系統(tǒng)

標(biāo)簽:岳陽 怒江 長春 清遠(yuǎn) 洛陽 泉州 吉林 安慶

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)》,本文關(guān)鍵詞  教,你用,Python,實(shí)現(xiàn),簡易,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)》相關(guān)的同類信息!
  • 本頁收集關(guān)于教你用Python實(shí)現(xiàn)簡易版學(xué)生信息管理系統(tǒng)(含源碼)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    隆尧县| 双鸭山市| 合江县| 峨眉山市| 门头沟区| 务川| 嘉义县| 和田县| 常德市| 南丹县| 嘉善县| 施甸县| 牡丹江市| 香港 | 清丰县| 泰宁县| 深州市| 台山市| 洛南县| 镇沅| 图木舒克市| 阳信县| 新乡县| 宁化县| 田阳县| 林周县| 岳普湖县| 罗甸县| 蕲春县| 苏尼特右旗| 五原县| 武邑县| 宁明县| 绥棱县| 卓资县| 应城市| 克什克腾旗| 澄迈县| 芷江| 安新县| 临邑县|