标签:计算 类方法 编程 实例 str 形式 之间 %s strftime
class A:
    company_name='老男孩'        #静态变量
    __iphone='1515151'          #私有静态变量
    def __init__(self,name,age): #特殊方法(双下方法)
        self.name=name          #对象属性
        self.__age=age          #私有对象属性
    def func(self):             #普通方法
        pass
    def __func(self):           #私有方法
        pass
    @classmethod
    def func1(cls):             #类方法
        '''定义类方法 至少有一个cls参数'''
        print('类方法')
    @staticmethod
    def sttic_func():           #静态方法(普通的函数)
        pass
    @property
    def prop (self):            #属性
        pass对于每一个类的成员而言都有两种形式:
类方法
    定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法);
    调用:只能由实例对象调用。    定义:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它来传递类的属性和方法(不能传实例的属性和方法);
    调用:实例对象和类对象都可以调用。
class A:
    @classmethod
    def func(cls):
        print('666')
A.func()        #666
obj=A()
obj.func()      #666    定义:使用装饰器@staticmethod。参数随意,没有“self”和“cls”参数,但是方法体中不能使用类或实例的任何属性和方法;
    调用:实例对象和类对象都可以调用。
class TimeTest(object):
    def __init__(self, hour, minute, second):
        self.hour = hour
        self.minute = minute
        self.second = second
    @staticmethod
    def showTime():
        return time.strftime("%H:%M:%S", time.localtime()) 定义:双下方法是特殊方法,他是解释器提供的 由爽下划线加方法名加爽下划线 __方法名__的具有特殊意义的方法,双下方法主要是python源码程序员使用的,属性
将一个类的函数定义成特性以后,对象再去使用的时候obj.name,根本无法察觉自己的name是执行了一个函数然后计算出来的,这种特性的使用方式遵循了统一访问的原则
class Foo:
    @property
    def AAA(self):
        print('get的时候运行我啊')
    @AAA.setter
    def AAA(self,value):
        print('set的时候运行我啊')
    @AAA.deleter
    def AAA(self):
        print('delete的时候运行我啊')
#只有在属性AAA定义property后才能定义AAA.setter,AAA.deleter
f1=Foo()
f1.AAA
f1.AAA='aaa'
del f1.AAA  isinstace isinstance(a,b):判断a是否是b类(或者b类的派生类)实例化的对象
class A:
    pass
class B(A):
    pass
obj = B()
print(isinstance(obj,B))
print(isinstance(obj,A))
isinstance(a,b):判断a是否是b类(或者b类的派生类)实例化的对象issubclass issubclass(a,b): 判断a类是否是b类(或者b的派生类)的派生类
class A:
    pass
class B(A):
    pass
class C(B):
    pass
print(issubclass(B,A))
print(issubclass(C,A))元类type
type元类是获取该对象从属于的类,而type类比较特殊,Python原则是:一切皆对象,其实类也可以理解为'对象',而type元类又称作构建类,python中大多数内置的类(包括object)以及自己定义的类,都是由type元类创造的。
而type类与object类之间的关系比较独特:object是type类的实例,而type类是object类的子类,这种关系比较神奇无法使用python的代码表述,因为定义其中一个之前另一个必须存在。所以这个只作为了解。标签:计算 类方法 编程 实例 str 形式 之间 %s strftime
原文地址:https://www.cnblogs.com/llwwhh/p/11318034.html