最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2021年06月20日 14:59:14   作者:饗喰__小天  
學(xué)生管理信息系統(tǒng)主要用來(lái)日常查詢學(xué)生信息,以及及時(shí)更新數(shù)據(jù)和修改數(shù)據(jù).用python實(shí)現(xiàn)簡(jiǎn)單學(xué)生管理信息系統(tǒng)不僅可以滿足以上要求,也可以鞏固之前學(xué)習(xí)的基礎(chǔ),需要的朋友可以參考下

一、項(xiàng)目分析

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

格式:list = [{學(xué)號(hào):姓名,年齡:num,成績(jī):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())

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

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

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

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

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

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

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

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

#刪除信息
def delete():
    did = int(input("輸入需要?jiǎng)h除的成績(jī)對(duì)應(yīng)的學(xué)號(hào):"))-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())

也是字典修改值得方法,通過(guò)鍵來(lái)修改對(duì)應(yīng)值

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

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

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

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

然后,完整代碼如下:

'''
Created on 2021年6月13日
學(xué)生信息系統(tǒng)
列表存儲(chǔ)學(xué)生信息,通過(guò)字典——鍵進(jìn)行學(xué)生信息訪問(wèn)
@author: 小天
'''
 
student1 = [\
            {1:"jam",'age':17,'socer':99},
            {2:'kol','age':18,'socer':89},
            {3:'avlir','age':19,'socer':100}]
#頁(yè)面
def menu():
    print('-'*30)
    print("歡迎來(lái)到學(xué)生管理系統(tǒng)")
    print("1.輸入學(xué)號(hào)查詢成績(jī)")
    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é)號(hào):"))-1 #學(xué)號(hào)
    if sid > len(student1)-1:
        print("輸入錯(cuò)誤,返回菜單")
    else:
        print(student1[sid]) #輸出信息
    input("按回車鍵繼續(xù)")
#添加信息
def append():
    newsid = eval(input('輸入新同學(xué)學(xué)號(hào)(從4開(kāi)始):'))
    newname = eval(input('輸入新同學(xué)姓名:'))
    newage = eval(input('輸入新同學(xué)年齡:'))
    newsocer = eval(input('輸入新同學(xué)成績(jī):'))
    newstudent1 = {}
    newstudent1[newsid] = newname #添加 學(xué)號(hào)、姓名
    newstudent1['age'] = newage #添加年齡
    newstudent1['socer'] = newsocer #添加成績(jī)
    student1.append(newstudent1) #加入列表
    input("按回車鍵繼續(xù)")
 
#刪除信息
def delete():
    did = int(input("輸入需要?jiǎng)h除的成績(jī)對(duì)應(yīng)的學(xué)號(hào):"))-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é)號(hào):"))-1    
    r = input("要修改的對(duì)象(1.年齡;2.成績(jī);否則,都修改):")
    if r == '1':
        newage = input("修改后的年齡")
        student1[resid]['age'] = newage
    elif r == '2':
        newsocer = input("修改后的成績(jī)")
        student1[resid]['socer'] = newsocer
    else:
        newage = input("修改后的年齡")
        newsocer = input("修改后的成績(jī)")
        student1[resid]['socer'] = newsocer
        student1[resid]['age'] = newage
    input("按回車鍵繼續(xù)")
    
##保存學(xué)生信息
def save():
    f = open('student.txt','w') #打開(kāi)文件
    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ò)誤,返回 ")

輸出示例:

------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:2
輸入新同學(xué)學(xué)號(hào)(從4開(kāi)始):4
輸入新同學(xué)姓名:'dfg'
輸入新同學(xué)年齡:17
輸入新同學(xué)成績(jī):78
按回車鍵繼續(xù)
------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
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ù)
------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:3
輸入需要?jiǎng)h除的成績(jī)對(duì)應(yīng)的學(xué)號(hào):4
按回車鍵繼續(xù)
------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
2.添加學(xué)生信息
3.刪除學(xué)生信息
4.打印所有學(xué)生信息
5.修改學(xué)生信息
6.保存學(xué)生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項(xiàng)數(shù)字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來(lái)到學(xué)生管理系統(tǒng)
1.輸入學(xué)號(hào)查詢成績(jī)
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)簡(jiǎn)易版學(xué)生信息管理系統(tǒng)(含源碼)的文章就介紹到這了,更多相關(guān)Python學(xué)生信息管理系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python數(shù)據(jù)類型_字符串常用操作(詳解)

    python數(shù)據(jù)類型_字符串常用操作(詳解)

    下面小編就為大家?guī)?lái)一篇python數(shù)據(jù)類型_字符串常用操作(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • Python實(shí)戰(zhàn)之整蠱神器合集加速友盡

    Python實(shí)戰(zhàn)之整蠱神器合集加速友盡

    讀萬(wàn)卷書(shū)不如行萬(wàn)里路,學(xué)的扎不扎實(shí)要通過(guò)實(shí)戰(zhàn)才能看出來(lái),本篇文章手把手帶用python來(lái)做幾個(gè)整蠱的小程序,大家可以在過(guò)程中查缺補(bǔ)漏,看看自己掌握程度怎么樣,發(fā)給朋友加固一下友誼
    2021-10-10
  • Django的session中對(duì)于用戶驗(yàn)證的支持

    Django的session中對(duì)于用戶驗(yàn)證的支持

    這篇文章主要介紹了Django的session中對(duì)于用戶驗(yàn)證的支持,Django是百花齊放的Python框架中人氣最高的一個(gè),需要的朋友可以參考下
    2015-07-07
  • python中dir()與__dict__屬性的區(qū)別淺析

    python中dir()與__dict__屬性的區(qū)別淺析

    這篇文章主要給大家介紹了關(guān)于python中dir()與__dict__屬性的區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • 淺談python中的變量默認(rèn)是什么類型

    淺談python中的變量默認(rèn)是什么類型

    python中的變量默認(rèn)是什么類型呢?還有很多新手不太明白。下面小編就為大家介紹一下python中的變量默認(rèn)是什么類型。一起跟隨小編過(guò)來(lái)看看吧
    2016-09-09
  • pandas中read_csv、rolling、expanding用法詳解

    pandas中read_csv、rolling、expanding用法詳解

    這篇文章主要介紹了pandas中read_csv、rolling、expanding用法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • python的簡(jiǎn)單web框架flask快速實(shí)現(xiàn)詳解

    python的簡(jiǎn)單web框架flask快速實(shí)現(xiàn)詳解

    這篇文章主要為大家介紹了python的簡(jiǎn)單web框架flask快速實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • python爬蟲(chóng)入門教程--快速理解HTTP協(xié)議(一)

    python爬蟲(chóng)入門教程--快速理解HTTP協(xié)議(一)

    http協(xié)議是互聯(lián)網(wǎng)里面最重要,最基礎(chǔ)的協(xié)議之一,我們的爬蟲(chóng)需要經(jīng)常和http協(xié)議打交道。下面這篇文章主要給大家介紹了關(guān)于python爬蟲(chóng)入門之快速理解HTTP協(xié)議的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-05-05
  • matplotlib?3D模型繪制一朵小紅花

    matplotlib?3D模型繪制一朵小紅花

    這篇文章主要介紹了matplotlib?3D模型繪制一朵小紅花,代碼有趣也有一定的知識(shí)參考價(jià)值,需要的朋友可以參考文章內(nèi)容下去試試
    2022-02-02
  • Python使用pypandoc將markdown文件和LaTex公式轉(zhuǎn)為word

    Python使用pypandoc將markdown文件和LaTex公式轉(zhuǎn)為word

    pypandoc 是一個(gè)用于 pandoc 的輕量級(jí) Python 包裝器,支持多種格式的文檔轉(zhuǎn)換,下面我們來(lái)看看如何使用pypandoc將markdown文件和LaTex公式轉(zhuǎn)為word吧
    2025-04-04

最新評(píng)論

铜梁县| 右玉县| 全南县| 即墨市| 宣武区| 老河口市| 淮安市| 正宁县| 保康县| 志丹县| 临城县| 巴林左旗| 织金县| 遵义市| 诏安县| 沙雅县| 天水市| 翁牛特旗| 上思县| 安溪县| 体育| 和田市| 株洲县| 克山县| 沙湾县| 建始县| 庆城县| 旬邑县| 嘉荫县| 偏关县| 十堰市| 洛南县| 新昌县| 山西省| 虹口区| 修武县| 韶山市| 巴彦淖尔市| 伊金霍洛旗| 广南县| 体育|