python 类进阶
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 类进阶相关的知识,希望对你有一定的参考价值。
一、类成员
1、字段(属性)
- 静态字段(类属性)
- 普通字段(实例属性)
静态字段可以被类直接调用,也可以被实例调用,在创建类的时候创建;
普通字段只能被实例调用,在对象实例化的的时候创建。
class Foo: city = ‘Beijing‘ # 静态字段 def __init__(self): name = ‘lilei‘ # 普通字段 age = 28 # 普通字段
>>>print(Foo.city) # 静态字段可以被类直接调用 Beijing >>>f = Foo() >>>print(f.city) # 静态字段可以被实例调用 Beijing >>>print(f.name) # 普通字段只能被实例调用 lilei
2、方法
- 类中的函数称为方法
1、普通方法
class Foo: def __init__(self): self.name = ‘lilei‘ self.age = 18 def print_name(self): ‘‘‘ 普通方法 print_name 每个普通方法的第一个参数是 self, 代表实例化后的对象 ‘‘‘ print(self.name)
>>> f = Foo() # 实例化对象 >>> print(f.print_name) # 普通方法只有实例化后才能调用,执行普通方法 lilei
2、静态方法
class Foo: county = ‘China‘ def __init__(self, city): self.city = city @staticmethod # 静态方法装饰器 def bar(arg): # 静态方法没有固定的第一一个参数 ‘‘‘ 静态方法不能调用静态字段和普通字段
静态方法一般直接被类调用 ‘‘‘ print(arg)
>>>Foo.bar(‘test‘) test
3.类方法
class Foo: country = ‘China‘ city = ‘beijing‘ def __init__(self): self.name = ‘lilei‘ self.age = 28 @classmethod # 类方法装饰器 def print_city(cls): # 类方法的第一个参数是cls,代表类背身 ‘‘‘ 类方法可以调用静态字段 ‘‘‘ print(cls.city)
>>>Foo.print_city() ‘Beijing‘
以上是关于python 类进阶的主要内容,如果未能解决你的问题,请参考以下文章