亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python實(shí)現(xiàn)學(xué)生管理系統(tǒng)的示例代碼

 更新時(shí)間:2023年07月03日 08:53:52   作者:繁依Fanyi  
學(xué)生管理系統(tǒng)是一個(gè)常見(jiàn)的應(yīng)用程序,它可以幫助學(xué)校、教育機(jī)構(gòu)或教師管理學(xué)生的信息,本文將介紹如何利用Python開發(fā)一個(gè)學(xué)生管理系統(tǒng),需要的可以參考一下

引言

學(xué)生管理系統(tǒng)是一個(gè)常見(jiàn)的應(yīng)用程序,它可以幫助學(xué)校、教育機(jī)構(gòu)或教師管理學(xué)生的信息。本文將介紹如何使用面向?qū)ο缶幊趟枷?,利用Python開發(fā)一個(gè)學(xué)生管理系統(tǒng)。系統(tǒng)具備添加學(xué)生、刪除學(xué)生、修改學(xué)生信息、查詢學(xué)生信息、顯示所有學(xué)生信息、保存學(xué)生信息及退出系統(tǒng)等功能,學(xué)生數(shù)據(jù)存儲(chǔ)在文件中。通過(guò)本文的學(xué)生管理系統(tǒng)示例,你將了解如何使用面向?qū)ο缶幊虂?lái)構(gòu)建實(shí)用的應(yīng)用程序。

一、系統(tǒng)設(shè)計(jì)與功能分析

學(xué)生管理系統(tǒng)需要實(shí)現(xiàn)以下功能:

  • 添加學(xué)生:向系統(tǒng)中添加新的學(xué)生信息,包括學(xué)號(hào)、姓名、年齡、性別等。
  • 刪除學(xué)生:從系統(tǒng)中刪除指定學(xué)號(hào)的學(xué)生信息。
  • 修改學(xué)生信息:根據(jù)學(xué)號(hào),修改學(xué)生的姓名、年齡、性別等信息。
  • 查詢學(xué)生信息:根據(jù)學(xué)號(hào)或姓名查詢學(xué)生的詳細(xì)信息。
  • 顯示所有學(xué)生信息:展示系統(tǒng)中所有學(xué)生的信息。
  • 保存學(xué)生信息:將學(xué)生信息保存到文件中,以便下次程序啟動(dòng)時(shí)加載數(shù)據(jù)。
  • 退出系統(tǒng):退出學(xué)生管理系統(tǒng)。

二、系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

在Python中,可以使用類來(lái)表示學(xué)生對(duì)象,每個(gè)學(xué)生對(duì)象包含學(xué)號(hào)、姓名、年齡、性別等屬性。下面是一個(gè)簡(jiǎn)單的示例代碼:

class Student:
    def __init__(self, student_id, name, age, gender):
        self.student_id = student_id
        self.name = name
        self.age = age
        self.gender = gender
    def display_info(self):
        print(f"學(xué)號(hào):{self.student_id}")
        print(f"姓名:{self.name}")
        print(f"年齡:{self.age}")
        print(f"性別:{self.gender}")
class StudentManagementSystem:
    def __init__(self):
        self.students = []
    def add_student(self, student):
        self.students.append(student)
    def remove_student(self, student_id):
        for student in self.students:
            if student.student_id == student_id:
                self.students.remove(student)
                print("刪除成功!")
                return
        print("未找到學(xué)號(hào)對(duì)應(yīng)的學(xué)生!")
    def modify_student_info(self, student_id, name, age, gender):
        for student in self.students:
            if student.student_id == student_id:
                student.name = name
                student.age = age
                student.gender = gender
                print("修改成功!")
                return
        print("未找到學(xué)號(hào)對(duì)應(yīng)的學(xué)生!")
    def search_student_info(self, keyword):
        for student in self.students:
            if keyword in (student.student_id, student.name):
                student.display_info()
    def display_all_students(self):
        if len(self.students) == 0:
            print("系統(tǒng)中暫無(wú)學(xué)生信息!")
        else:
            for student in self.students:
                student.display_info()
    def save_students_info(self, filename):
        with open(filename, "w") as file:
            for student in self.students:
                file.write(f"{student.student_id},{student.name},{student.age},{student.gender}\n")
        print("學(xué)生信息保存成功!")
    def load_students_info(self, filename):
        self.students = []
        try:
            with open(filename, "r") as file:
                lines = file.readlines()
                for line in lines:
                    student_data = line.strip().split(",")
                    student = Student(student_data[0], student_data[1], int(student_data[2]), student_data[3])
                    self.students.append(student)
            print("學(xué)生信息加載成功!")
        except FileNotFoundError:
            print("找不到指定的學(xué)生信息文件!")

三、系統(tǒng)應(yīng)用示例

下面是一個(gè)簡(jiǎn)單的示例代碼,演示了如何使用學(xué)生管理系統(tǒng):

system = StudentManagementSystem()
# 加載學(xué)生信息
system.load_students_info("students.txt")
while True:
    print("===== 學(xué)生管理系統(tǒng) =====")
    print("1. 添加學(xué)生")
    print("2. 刪除學(xué)生")
    print("3. 修改學(xué)生信息")
    print("4. 查詢學(xué)生信息")
    print("5. 顯示所有學(xué)生信息")
    print("6. 保存學(xué)生信息")
    print("7. 退出系統(tǒng)")
    choice = input("請(qǐng)輸入操作編號(hào):")
    if choice == "1":
        student_id = input("請(qǐng)輸入學(xué)號(hào):")
        name = input("請(qǐng)輸入姓名:")
        age = int(input("請(qǐng)輸入年齡:"))
        gender = input("請(qǐng)輸入性別:")
        student = Student(student_id, name, age, gender)
        system.add_student(student)
        print("添加成功!")
    elif choice == "2":
        student_id = input("請(qǐng)輸入要?jiǎng)h除的學(xué)號(hào):")
        system.remove_student(student_id)
    elif choice == "3":
        student_id = input("請(qǐng)輸入要修改的學(xué)號(hào):")
        name = input("請(qǐng)輸入姓名:")
        age = int(input("請(qǐng)輸入年齡:"))
        gender = input("請(qǐng)輸入性別:")
        system.modify_student_info(student_id, name, age, gender)
    elif choice == "4":
        keyword = input("請(qǐng)輸入要查詢的學(xué)號(hào)或姓名關(guān)鍵字:")
        system.search_student_info(keyword)
    elif choice == "5":
        system.display_all_students()
    elif choice == "6":
        system.save_students_info("students.txt")
    elif choice == "7":
        break
    else:
        print("無(wú)效的操作編號(hào),請(qǐng)重新輸入!")
print("感謝使用學(xué)生管理系統(tǒng),再見(jiàn)!")

四、總結(jié)

通過(guò)面向?qū)ο缶幊趟枷?,我們成功開發(fā)了一個(gè)學(xué)生管理系統(tǒng)。該系統(tǒng)具備添加、刪除、修改、查詢和顯示學(xué)生信息的功能,并支持學(xué)生信息的持久化保存。通過(guò)適當(dāng)?shù)念愒O(shè)計(jì)和方法定義,我們可以有效地組織和操作學(xué)生對(duì)象,實(shí)現(xiàn)學(xué)生信息的管理與操作。這個(gè)示例項(xiàng)目可以作為一個(gè)基礎(chǔ)框架,根據(jù)實(shí)際需求進(jìn)行擴(kuò)展和優(yōu)化,構(gòu)建更完善的學(xué)生管理系統(tǒng)。通過(guò)這個(gè)實(shí)例,你可以學(xué)習(xí)到如何使用面向?qū)ο缶幊趟枷雭?lái)解決實(shí)際問(wèn)題,并在開發(fā)過(guò)程中體驗(yàn)到面向?qū)ο蟮膬?yōu)勢(shì)。祝你在學(xué)習(xí)和實(shí)踐中取得進(jìn)步!

以上就是Python實(shí)現(xiàn)學(xué)生管理系統(tǒng)的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Python學(xué)生管理系統(tǒng)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • PyGame實(shí)現(xiàn)初始化導(dǎo)入所有模塊方法詳解

    PyGame實(shí)現(xiàn)初始化導(dǎo)入所有模塊方法詳解

    pygame安裝是為了開發(fā)小游戲,在下新手在經(jīng)過(guò)許多嘗試后,為大家避雷,給大家分享一個(gè)簡(jiǎn)單有效的方法,下面這篇文章主要給大家介紹了關(guān)于Python中Pygame的詳細(xì)安裝過(guò)程的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • python基于Pandas讀寫MySQL數(shù)據(jù)庫(kù)

    python基于Pandas讀寫MySQL數(shù)據(jù)庫(kù)

    這篇文章主要介紹了python基于Pandas讀寫MySQL數(shù)據(jù)庫(kù),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • django模板獲取list中指定索引的值方式

    django模板獲取list中指定索引的值方式

    這篇文章主要介紹了django模板獲取list中指定索引的值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • 在多種情況/開發(fā)環(huán)境中運(yùn)行python腳本和代碼的技巧分享

    在多種情況/開發(fā)環(huán)境中運(yùn)行python腳本和代碼的技巧分享

    Python腳本或程序是包含可執(zhí)行Python代碼的文件,能夠運(yùn)行Python腳本和代碼可能是您作為Python開發(fā)人員所需的最重要的技能,在本教程中,您將學(xué)習(xí)一些運(yùn)行Python腳本和代碼的技術(shù),在每種情況下使用的技術(shù)將取決于您的環(huán)境、平臺(tái)、需求和技能
    2023-11-11
  • Python性能測(cè)試工具Locust安裝及使用

    Python性能測(cè)試工具Locust安裝及使用

    這篇文章主要介紹了Python性能測(cè)試工具Locust安裝及使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Tensorflow 多線程設(shè)置方式

    Tensorflow 多線程設(shè)置方式

    今天小編就為大家分享一篇Tensorflow 多線程設(shè)置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • 使用python中的openpyxl操作excel詳解

    使用python中的openpyxl操作excel詳解

    這篇文章主要介紹了使用python中的openpyxl操作excel詳解,openpyxl 模塊是一個(gè)讀寫Excel文檔的Python庫(kù),本文就來(lái)講解如何使用openpyxl操作excel,需要的朋友可以參考下
    2023-07-07
  • pandas dataframe rolling移動(dòng)計(jì)算方式

    pandas dataframe rolling移動(dòng)計(jì)算方式

    在Pandas中,rolling()方法用于執(zhí)行移動(dòng)窗口計(jì)算,常用于時(shí)間序列數(shù)據(jù)分析,例如,計(jì)算某商品的7天或1個(gè)月銷售總量,可以通過(guò)rolling()輕松實(shí)現(xiàn),該方法的關(guān)鍵參數(shù)包括window(窗口大小),min_periods(最小計(jì)算周期)
    2024-09-09
  • python實(shí)現(xiàn)日常記賬本小程序

    python實(shí)現(xiàn)日常記賬本小程序

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)日常記賬本小程序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python實(shí)現(xiàn)批量圖片的切割

    Python實(shí)現(xiàn)批量圖片的切割

    本文主要介紹了Python實(shí)現(xiàn)批量圖片的切割,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09

最新評(píng)論