python中的单例,异常,文件处理

##################单例#############
(1)
设计模式:
   设计模式是前人的总结和经验的提炼,通常,被人人们广为流传的设计模式都是针对某一特定问题的成熟解决方案
单例设计模式
单例:让类创建的对象,在系统中有唯一的实例
创建对象的时候:
1.为对象分配空间:__new__()
创建对象的时候,python解释器首先会调用__new__方法为ie对象分配空间
__new__是一个由object基类提供的内置的静态方法,主要有两个作用:
    在内存中为对象分配空间
    返回对象的引用
2.对象初始化 :__init__()
python解释器获得对象的引用后,将引用的第一个参数,传递给__init__方法

(2)
只执行一次初始化工作
在每次使用 类名() 创建对象时,python的解释器都会自动调用两个方法
    __new__ 分配空间
    __init__ 对象初始化
但在上一小结中 __new__方法改造之后,每次都会得到第一次被创建对象的引用
但是:初始化方法还会被再次掉用

需求:让初始化方法只执行一次
解决办法:
1.定义一个类属性init_flag标记是否执行过初始化动作,初始值为false
2.在__init__方法中,判断init_flag,如果为false就执行初始化动作
3.然后将init_flag设置为trun
4.这样,再次自动调用__init__方法时,初始化动作就不会再次被执行了


#############异常##############
异常的概念:程序在运行的时候,如果python解释器遇到一个错误,会停止程序的执行,并且提示一些错误的信息,这就是异常。我们在程序开发的时候,很难将所有的特殊情况都处理,通过异常捕获可以针对突发事件做集中处理,从而保证程序的健壮性和稳定性
运用异常:在程序开发中,如果对某些代码的执行不能确定(程序语法完全正确),可以增加try来捕获异常
try:
    尝试执行的代码
except:
    出现错误的处理

#异常的传递:一级一级的去找,最终会将异常传递到主程序里面


#断言:可以理解为提前预言,让人更好的知道错误的原因

*********异常练习******

#############文件###############
文件指针
文件指针标记从哪个位置开始读取数据
第一次打开文件时,通常文件指针会指向文件的开始位置
当执行了read方法后,文件指针会移动到读取内容的末尾


##文件相关字符的意义:
r:-只能读,不能写
  -读取的文件不存在,会报错
r+:-课读可写
   -文件不存在,报错
w:-只能写,不能读
  -会清空问覆盖文件内容
  -如果文件不存在,会新建文件
w+:-文件存在,会覆盖原文件
   -文件不存在,创建新文件
a:-只能写,不能读
  -文件不存在,新建文件不报错
  -文件存在,不会清空文件内容
a+:-可读可写
   -文件不存在的时候,新建文件
   -文件存在,不会覆盖原文件内容
*读取二进制的时候,所用字符为:rb wb ab rb+ wb+ ab+


##文件的操作:
文件操作3部曲:打开 操作 关闭
(1)打开
f = open('passwdss','a')
(2)操作
content = f.read()
f.write('linux')
print content
(3)关闭文件
f.close()

******文件练习************

猜你喜欢

转载自blog.csdn.net/weixin_42731856/article/details/82765403
今日推荐