'''
# 当前类的实例化对象被销毁时,自动销毁
# 作用:比如在初始化方法中的开发的文件,可以在构造方法中
def __del__(self):
print('我时析构方法')
对象的销毁的几种情况:
1.当程序执行完毕,所有内存中的资源都会被销毁释放
2.使用del删除
3.对象不再被引用时会自动销毁
'''
import os, time
class Pet():
filepath = './'
filename = str(time.strftime('%Y-%m-%d')) + '.log'
def __init__(self, filename):
print('初始化方法')
self.filename = filename
self.cc = open(self.filepath + self.filename, 'w', encoding='utf-8')
def create(self):
print('我在打开文件写日志')
# cc = open(self.filepath + self.filename, 'w', encoding='utf-8')
# cc.writelines('ni hao')
# 作用:关闭一些打开的资源
def __del__(self):
# 在对象被销毁时,关闭在初始化方法中打开的文件对象
print('关闭打开的文件')
self.cc.close()
l = Pet(str(time.strftime('%Y-%m-%d')) + '.log')
l.create()
print('...')
# 初始化方法
# 我在打开文件写日志
# ...
# 关闭打开的文件
# Pet(str(time.strftime('%Y-%m-%d')) + '.log').create()
# print('...')