学习python,从入门到放弃(29)
2022/4/12 22:42:48
本文主要是介绍学习python,从入门到放弃(29),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
学习python,从入门到放弃(29)
设计模式
在IT行业中设计模式总共有23种,大致可以分为三大类分别是创建型、结构型和行为型。
设计模式是经过反复验证用于解决固定问题的固定套路。
-
设计模式之单例模式
单例模式的意思是一个类只能产生一个对象,用于节省资源,比如有一个类中有很多绑定给对象的方法,我们需要在很多地方使用它,那么不同的程序员来用不知道有没有产生对象,所以自己会创建一个新对象,如此往复则会造成资源的浪费。
所以我们需要在类实例化对象的时候进行干涉 >>>: 元类
单例模式:(可以有很多种编写方式)
class Single(type): new_obj = None def __call__(self, *args, **kwargs): if not self.new_obj: obj = super().__call__(*args, **kwargs) self.new_obj = obj return self.new_obj return self.new_obj class MyClass(metaclass=Single): def __init__(self, name): self.name = name obj1 = MyClass('jason') obj2 = MyClass('tony') print(id(obj1), id(obj2)) print(obj1.__dict__, obj2.__dict__)
pickle 模块
并且该模块只支持 python,兼容性很差。
大致用于,将对象保存到文件,并且取出来之后还可以使用对象的功能。
import pickle class MyClass(object): school = 'school' def __init__(self, name): self.name = name def choose_course(self): print('%s正在选课' % self.name) obj = MyClass('jason') print(obj.school) obj.choose_course() # pickle可以 with open(r'%s' % obj.name, 'wb') as f: pickle.dump(obj, f) with open(r'jason', 'rb') as f: data = pickle.load(f) print(data) print(data.name) print(data.school)
这篇关于学习python,从入门到放弃(29)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南