簡體   English   中英

我們可以在它自己的方法中傳遞類對象嗎?

[英]Can we pass the class object inside its own method?

我有一個 A 類對象方法,它使用另一個 B 類對象的方法,該方法的參數是 A 類對象。

class A(): 
    def calculate(self):
         B = B.calculator(A)
       
class B():
    def calculator(self, A):
         ...do something with A.attributes

可以只將屬性傳遞給對象,但我認為這種可能性是最后的優先事項。 我絕對有點過分簡化了我的案例,但我想知道是否有辦法通過整個課程

編輯:抱歉造成混亂。 最后,我試圖調用 A 類對象和 A.calculate(),它將調用 B 類對象和計算器函數。

class A(): 
    def __init__(self, value):
         self.value = value
         
    def calculate(self):
         Bobj = B()
         Bobj.calculator(A)
       
class B():
    def calculator(self, A):
         ...do something with A.value

def main():
     Aobj = A(value)
     Aobj.calculate()

您的方案當前並未表明您想在計算 A 時使用 B 中的任何信息。有幾種方法可以獲得您想要的功能。

場景:B 不存儲任何信息並進行計算。 B 應該是一個函數

def B(value):
    ```do something with value```
    return

class A(): 
    def __init__(self, value):
         self.value = value
         
    def calculate(self):
         return B(self.value)

def main():
     Aobj = A(value)
     Aobj.calculate()

場景:B 存儲了一些其他信息,但計算不需要內部 B 信息。 B 應該有一個靜態方法

class B():
    @staticmethod
    def calculate(value):
        ```do something with value```
        return

class A(): 
    def __init__(self, value):
         self.value = value
         
    def calculate(self):
         return B.calculate(self.value)

def main():
     Aobj = A(value)
     Aobj.calculate()

暫無
暫無

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

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