博客
关于我
第8.31节 Python中使用__delattr__清除属性数据
阅读量:93 次
发布时间:2019-02-26

本文共 1515 字,大约阅读时间需要 5 分钟。

__delattr__???Python?????????

????????????????getattribute?setattr????????????????????????Python????????????get?set?delete??delete??????????__delattr__???????????????????????????????????????????

__delattr__??????

__delattr__??????????????????????

??.__delattr__(???)

????????????????car.power?????__delattr__??????????????

car.__delattr__('power')

????

  • ????????????????????????__delattr__???????AttributeError?
  • ??????__delattr__???????????
  • ??????????????????????????????????
  • ????

    ?????Car???????__delattr__??????

    • ????

      class Car:    refcount = 0  # ???????__delattr__??    def __init__(self, power):        self.power = power        self.totaldistance = 0    def drive(self, distance):        print(f"In method drive: distance={distance}")        self.totaldistance += distance
    • ?????

      car = Car('?????')
    • ?????

      car.__dict__  # ??????????{'power': '?????', 'totaldistance': 0}
    • ???????

      car.__delattr__('power')  # ???AttributeError: '?????'

      ???????????????__delattr__????

    • ?????

      car.__delattr__('power')  # ??power??

      ???

      car.__dict__  # {'totaldistance': 0}
    • ??????????????????__delattr__???

      car.__delattr__('drive')  # ???AttributeError: 'drive'

    ??????????

  • ????__delattr__?????????????del ??.???????__delattr__??????????????????????

  • ????????Python?????????ARC??????????????__delattr__??????????????????

  • ??__delattr__?????????????????__delattr__???

    def __delattr__(self, name):    print(f"?????{name}")    super().__delattr__(name)
  • ??

    __delattr__????????????????????????????????????????????????????????????????????????????

    转载地址:http://iog.baihongyu.com/

    你可能感兴趣的文章
    ptyhon POSIX
    查看>>
    public private protected default小结
    查看>>
    PublicCMS怎么用金蝶Apusic Application Server部署
    查看>>
    publish over ssh、 Kubernetes Continuous Deploy插件
    查看>>
    PubMed详解-ChatGPT4o作答
    查看>>
    Pubsub Extensions for Smack
    查看>>
    pulsar mq 单体验证demo, docker启动pulsar mq验证生产者消费者命令
    查看>>
    pulsar mq 学习使用,pulsar java客户端, spring boot pulsar , spring pulsarTemplate如何使用 pulsar4.0.0
    查看>>
    Pulsar mq 设置延迟消息模式 pulsar mq 发送延迟消息 pulsar如何发送消费延时消息
    查看>>
    Pulsar 游标回滚,移动偏移量测试
    查看>>
    pulsar开源消息队列_了解Pulsar---Pulsar工作笔记001
    查看>>
    Puppet 在大规模分布式系统中的性能优化策略有哪些?
    查看>>
    puppet 学习总结(1)——puppet 入门详解
    查看>>
    puppet 集中化管理PDF by 守住
    查看>>
    Puppet---自动化运维工具(进阶)
    查看>>
    puppeteer(三)常用API
    查看>>
    PyTorch 微调终极指南:第 2 部分 — 提高模型准确性
    查看>>
    pure css做的手机页面
    查看>>
    PureMVC--一款多平台MVC框架
    查看>>
    pure框架
    查看>>