想摸妹妹大腚 发表于 2020-6-11 18:39:26

最后为什么要删除这个文件呢?

小李做事常常丢三落四的,写代码也一样,常常打开了文件又忘记关闭。你能不能写一个 FileObject 类,给文件对象进行包装,从而确认在删除对象时文件能自动关闭?
class FileObject:
    '''给文件对象进行包装从而确认在删除时文件流关闭'''

    def __init__(self, filename='sample.txt'):
      #读写模式打开一个文件
      self.new_file = open(filename, 'r+')

    def __del__(self):
      self.new_file.close()
      del self.new_file
为什么要删除这个文件啊?不是只要关闭就行了吗???

Twilight6 发表于 2020-6-11 18:42:45

从而确认在删除对象时文件能自动关闭

题目就是指删除文件对象时候 记得关闭文件,所以要删除这个文件对象呀,只是在删除前添加了关闭文件的功能

想摸妹妹大腚 发表于 2020-6-11 18:42:49

def __init__(self, filename='sample.txt'):
      #读写模式打开一个文件
      self.new_file = open(filename, 'r+')

    def __del__(self):
      self.new_file.close()
只这样不行吗》?

Twilight6 发表于 2020-6-11 18:43:33

想摸妹妹大腚 发表于 2020-6-11 18:42
def __init__(self, filename='sample.txt'):
      #读写模式打开一个文件
      self.new_file = o ...

你这样就导致没有删除文件对象这个功能了,而调用__del__ 方法就是为了删除文件对象
页: [1]
查看完整版本: 最后为什么要删除这个文件呢?