GoF大话单例单例 静态方法+静态字段

本文介绍了一个简单的课程选择系统的实现过程。系统使用Python语言,通过定义教师和课程类来组织数据,并利用pickle模块进行数据持久化存储。学生登录后可以查看课程列表并选择课程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# GoF设计模式
# 大话设计模式
# 当所有实例中封装的数据都相同时,单例
# 静态方法+静态字段
import pickle
class Teacher:
def __init__(self,name,age):
self.name = name
self.age = age
self.__asset = 0
class Course:
def __init__(self,name,time,teacher):
self.name = name
self.time = time
self.teacher = teacher
def main():
t1 = Teacher("marry", 30)
t2 = Teacher("may", 31)
c1 = Course("语文", "8:00", t1)
c2 = Course("数学", "9:00", t2)
course_list = []
course_list.append(c1)
course_list.append(c2)
pickle.dump(course_list, open("course_list", "wb"))
if __name__ == '__main__':
main()
import pickle
from day.day1 import Course,Teacher
class Student:
def __init__(self):
pass

def login(self):
username = input("username:")
password = input("password:")
if username == "tom" and password == "123":
print("登陆成功")
return True
return False

def choice(self):
ret = input("which course? :")
return ret

if __name__ == '__main__':
student = Student()
if student.login():
course_list = pickle.load(open("course_list","rb"))
for i,item in enumerate(course_list,1):
j = item.teacher
print(i,item.name,item.time,j.name,j.age)

ret = student.choice()
i = course_list[int(ret)-1]
print("选课成功")
pickle.dump(i,open("tom_list","wb"))






转载于:https://www.cnblogs.com/currynashinians000/p/8688114.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值