學生資訊管理系統MVC(Python)

2021-10-07 06:28:35 字數 3111 閱讀 3165

練習物件導向程式設計的起點,不多說,直接上**。

"""

學生資訊管理系統mvc

"""# 2.資料模型

class

studentmodel

:"""

學生資料模型

對具體學生資訊進行抽象

"""def__init__

(self, name=

"", age=

0, score=

0, sid=0)

: self.name = name

self.age = age

self.score = score

# 學生編號:對資料進行唯一標識(全球唯一識別符號)

self.sid = sid # 自增長1001 1002 1003

# 對某個資料進行有效性驗證

@property

defscore

(self)

:return self.__score

@score.setter

defscore

(self, value)

:if value <0:

value =

0elif value >

100:

value =

100 self.__score = value

# 3.介面邏輯

class

studentview

:"""

學生檢視:負責處理介面邏輯

"""def__init__

(self)

: self.__controller = studentcontroller(

)def

__display_menu

(self)

:print

("1) 新增學生資訊"

)print

("2) 顯示學生資訊"

)print

("3) 刪除學生資訊"

)# ...

def__select_menu

(self)

: item =

input

("請輸入選項:"

)if item ==

"1":

# 先寫呼叫,再快捷鍵生成定義函式**

# atl + 回車

self.__input_student(

)elif item ==

"2":

self.__show_students(

)elif item ==

"3":

self.__delete_student(

)def

main

(self)

:"""

入口函式

"""while

true

: self.__display_menu(

) self.__select_menu(

)def

__input_student

(self)

: stu = studentmodel(

) stu.name =

input

("請輸入學生姓名:"

) stu.age =

int(

input

("請輸入學生年齡:"))

stu.score =

int(

input

("請輸入學生成績:"))

self.__controller.add_student(stu)

def__show_students

(self)

:for stu in self.__controller.list_students:

print

(f"的編號是年齡是成績是"

)def

__delete_student

(self)

: sid =

int(

input

("請輸入需要刪除的學生編號:"))

if self.__controller.remove_student(sid)

:print

("刪除成功"

)else

:print

("刪除失敗"

)# 4.業務邏輯

class

studentcontroller

:"""

學生控制器

負責處理業務邏輯

"""def__init__

(self)

: self.__list_students =

self.__start_sid =

1001

# 唯讀屬性

@property

deflist_students

(self)

:return self.__list_students

defadd_student

(self, stu)

:"""

新增學生

:param stu: 需要新增的學生物件

"""stu.sid = self.__start_sid

self.__start_sid +=

1def

remove_student

(self, sid)

:"""

刪除學生

:param sid: int型別的學生編號

:return: bool型別,是否刪除成功

"""for student in self.__list_students:

if student.sid == sid:

self.__list_students.remove(student)

return

true

# 刪除成功

return

false

# 刪除失敗

# 1.入口

view = studentview(

)view.main(

)

學生資訊管理系統

學生資訊管理系統,顧名思義就是為了管理學生的相關資訊做的一款軟體。雖然這次有原始碼供我們參考,但是從中我學習到了如何從開始到完工去做一款軟體,下邊我從做一項軟體專案的前後順序來總結我的學生資訊管理系統。一,分析需求 首先在做這款軟體是,我們先想象乙個成品,他的功能有哪些,每個功能完成哪項任務,這就是...

學生資訊管理系統

1.背景描述 學校招生辦在錄取當年新生時為新生建立了乙個新生基礎資訊類studentbase,其中包含每位新生的基本資料 學號 long mnum 姓名 char mname 20 性別 int m 其中0表示男,1表示女 年齡 int mage 住址 char maddr 30 新生主修專業所在系...

學生資訊管理系統

學生資訊管理系統由13個窗體1乙個mdi窗體乙個模組組成,窗體主要實現了登陸 新增 修改 檢視等功能,模組主要是存放全域性變數和各種函式。在敲這個系統之前,我覺得有個問題需要考慮一下,要是想一邊敲一邊除錯的話,那前面就得把資料庫等配置好了,如果想敲完再除錯的話,那就什麼時候配置好資料庫都可以。我當時...