摘要:
观察者模式 定义:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖它的对象都会得到通知并被自动更新,观察者模式又称'发布订阅'模式。 角色:抽象主题,具体主题(发布者),抽象观察者,具体观察者(订阅者) 适用场景: 当一个抽象模型有两个方面,其中一个方面依赖于另一个方面,将两者 阅读全文
摘要:
工厂模式 定义:不直接向客户暴露对象创建实现的细节,而是通过一个工厂类来负责创建产品类的实例 角色:抽象产品角色,具体产品角色,工厂角色 使用场景:工厂模式是创建型模式,它的作用是创建对象 优点:隐藏了对象创建产品的细节,客户段不需要修改代码 缺点:违反了单一职责原则,将创建逻辑集中到一个工厂里 c 阅读全文
摘要:
单例模式 https://www.cnblogs.com/restartyang/articles/7770856.html 定义:保证一个类只有一个实例,并提供一个访问它的全局访问点 适用场景: 当一个类只有一个实例而客户可以从一个众所周知的访问点访问它时 频繁访问数据库或文件的对象。 需要频繁实 阅读全文
摘要:
设计模式 设计模式的作用: 解决面向对象系统中重要和重复的设计封装在一起的一种代码实现框架,可以使代码更加易于扩展和调用 四个基本要素: 模式名称,问题,解决方案,效果 六大原则: 开闭原则: 一个软件实体(如类,模块,函数)要经行扩展开发,要在尽量不修改软件实体(源代码)的情况下经行扩展 里氏替换 阅读全文
摘要:
运算符 算数运算符 +,- 比较运算符 >,<,== 赋值运算符=,+= 逻辑运算符not,and,or(优先级:not > and > or,同一优先级从左至右依次计算) # and or not # 1 在没有()的情况下,优先级:not > and > or,同一优先级从左至右依次计算 # 情 阅读全文
摘要:
格式化输出 %s # 格式化输出 name = input('请输入你的姓名:') age = input('请输入你的年龄:') password = input('请输入你的密码:') msg=''' name=%s password=%s age=%s '''%(name,password,a 阅读全文
摘要:
编码初识 https://www.zhihu.com/question/57461614 #此大神讲的更详细 不同的密码本之间不能互相识别,否则会乱码 数据在内存中全部是Unicode编码,但是数据用于网络传输或者存储到硬盘中,必须以非Unicode编码使用utf-8或gbk等。 8bit == 1 阅读全文
摘要:
id id(相当于身份证号码) id是唯一的,但每次都会变化 相同可变类型的id每次都不同,相同不可变类型的id每次都相同 a=[1,2,3] b=[1,2,3] print(id(a)) print(id(b)) # 得 # 1364301406792 # 1364301406856 c='xia 阅读全文
摘要:
赋值 python中,因为赋值“=”是直接引用地址。当采用赋值创建新的可变数据类型时,一旦更改其中的一个变量的值,另外一个变量也会随之改。 a=[1,2,3] b=a b[1]=4 print(id(a),a) print(id(b),b) 得: 2082164662856 [1, 4, 3] 20 阅读全文