• python3 面向对象高级一些的


     1 class Foo:
     2     def __init__(self,name):
     3         self.name=name
     4     def __call__(self, *args, **kwargs):
     5         print('====>')
     6 f=Foo('egon')
     7 f()
     8 
     9 class Foo:
    10     def __init__(self,name):
    11         self.name=name
    12     def __getitem__(self,item):
    13         print('getitem',self.__dict__)
    14         return self.__dict__[item]
    15     def __setitem__(self, key, value):
    16         print('setimtem')
    17         self.__dict__[key]=value
    18     def __delitem__(self, key):
    19         print('del obj[key]时,我执行')
    20         self.__dict__.pop(key)
    21 f=Foo('egon')
    22 # print(f['name']) #f.name
    23 f['x']=1
    24 # print(f.__dict__)
    25 del f['x']
    26 print(f.__dict__)
    27 
    28 f1=Foo('sb')
    29 f1['age']=18
    30 f1['age1']=19
    31 del f1.age1
    32 del f1['age']
    33 f1['name']='alex'
    34 print(f1.__dict__)
    View Code
    ====>
    setimtem
    del obj[key]时,我执行
    {'name': 'egon'}
    setimtem
    setimtem
    del obj[key]时,我执行
    setimtem
    {'name': 'alex'}
    

      

  • 相关阅读:
    HashMap底层实现原理(JDK1.8)源码分析
    JVM总结
    初识Nosql
    线程池总结
    Linux中常用操作命令
    JAVA—集合框架
    TeKtronix TDS210数字示波器使用简介
    硬盘的物理结构
    Unicode 与 UTF
    I2C串行总线
  • 原文地址:https://www.cnblogs.com/xp1005/p/6529860.html
Copyright © 2020-2023  润新知