属性方法

Posted Smile杰丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了属性方法相关的知识,希望对你有一定的参考价值。

import os
# os.system()
# os.mkdir()

class Dog(object):
‘‘‘这个类是描述狗这个对象的‘‘‘

def __init__(self,name):
self.name = name
self.__food = None

#@staticmethod #实际上跟类没什么关系了
#@classmethod
@property #attribute
def eat(self):
print("%s is eating %s" %(self.name,self.__food))
@eat.setter
def eat(self,food):
print("set to food:",food)
self.__food = food
@eat.deleter
def eat(self):
del self.__food
print("删完了")

def talk(self):
print("%s is talking"% self.name)

def __call__(self, *args, **kwargs):
print("running call",args,kwargs)

def __str__(self):
return "<obj:%s>" %self.name

#print(Dog.__dict__) #打印类里的所有属性,不包括实例属性
d = Dog("AAA")
print(d)
# print(d.__dict__) #打印所有实例属性,不包括类属性
# d(1,2,3,name=333)

以上是关于属性方法的主要内容,如果未能解决你的问题,请参考以下文章

python中类对象实例对象类属性实例属性类方法实例方法静态方法

类属性和类方法

Python中类的属性方法及内置方法

es6中类中的静态属性实例属性静态方法实例方法的个人理解

python 属性,类方法和静态方法

Python之路 - 属性方法,类方法,静态方法