如何在 Python 中声明一个静态属性?

2022-01-13 00:00:00 python class static attributes

问题描述

如何在 Python 中声明静态属性?

How can I declare a static attribute in Python?

这里写了我如何声明一个方法:Python中的静态方法?

Here is written how I can declare a method: Static methods in Python?


解决方案

Python中类级别定义的所有变量都被认为是静态的

All variables defined on the class level in Python are considered static

class Example:
    Variable = 2           # static variable

print Example.Variable     # prints 2   (static variable)

# Access through an instance
instance = Example()
print instance.Variable    # still 2  (ordinary variable)


# Change within an instance 
instance.Variable = 3      #(ordinary variable)
print instance.Variable    # 3   (ordinary variable)
print Example.Variable     # 2   (static variable)


# Change through Class 
Example.Variable = 5       #(static variable)
print instance.Variable    # 3  (ordinary variable)
print Example.Variable     # 5  (static variable)

您的类中可以有两个不同的变量在同一个名称下(一个是静态的,一个是普通的).不要混淆.

You can have two different variables in your class under the same name (one static and one ordinary). Don't be confused.

相关文章