簡體   English   中英

使用 static 方法修改變量

[英]Modify variables with a static method

我知道 static 方法應該保持在最低限度,並且 static 方法的整個想法是它們不與 class 交互,但有沒有辦法做到這一點?

要求:

class 系統具有 2 個屬性 - 可分割和可觀察,它們是空列表

static 方法 register_divisible(name) 獲取參數名稱並將其附加到 divisible

例子:

class System:
    def __init__(self):
        self.divisible = []
        self.obvisible = []

    @staticmethod
    def register_divisible(name):
        self._divisible.append(name)

對於此要求,您必須在構造函數之外定義divisible和可見的,並使用obvisible名稱而不是self引用變量

class System:
    divisible = []
    obvisible = []

    @staticmethod
    def register_divisible(name):
        System.divisible.append(name)

#Instance        
a=System()
a.register_divisible('one')

#Static
System.register_divisible("two")

print(a.divisible) #prints ['one','two']
print(System.divisible) #prints ['one','two']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM