Python——内置方法

内置的类方法 和内置函数之间的关系

__str__()

# -*- coding:UTF-8 -*-
class A:
    def __str__(self): #object 里有一个__str__,一旦被调用,就返回调用这个方法的对象地址
      return "A is object"
a = A()
print(a)

__repr__()

# -*- coding:UTF-8 -*-
class Teacher:
    def __init__(self,name,pice):
        self.name = name
        self.pice = pice
        
    def __reper(self):
        return str(self.__dict__)
n = Teacher('哪吒',250print(repr(n))        
#执行 repr方法 repr 是 str 的备胎 ,不可以反过来

__len__() 和 len() 方法相同

__del__

__call__

item系列

  __getitme__:查

  __setitem__:查,更改设置

  __delitem__:删除

dic['k'] = 'v'
 class Foo:
     def __init__(self,name,age,sex):
         self.name = name
         self.age = age
         self.sex = sex

     def __getitem__(self, item):
         if hasattr(self,item):
             return self.__dict__[item]

     def __setitem__(self, key, value):
         self.__dict__[key] = value

     def __delitem__(self, key):
         del self.__dict__[key]

 f = Foo('egon',38,'')
 print(f['name'])
 f['hobby'] = ''
 print(f.hobby,f['hobby'])
 del f.hobby      # object 原生支持  __delattr__
 del f['hobby']   # 通过自己实现的
 print(f.__dict__)

猜你喜欢

转载自www.cnblogs.com/cxys85/p/9785739.html
今日推荐