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 类进阶的主要内容,如果未能解决你的问题,请参考以下文章

1.26 Python知识进阶 - 继承

Python面向对象进阶及类成员

面向对象进阶

python进阶详解元类及其应用1

01月11日 四周四次Python基础进阶

Python之路,Day8 - 面向对象编程进阶