2017-04-25 85 views
1

我想創建一個嵌套類來執行在每個子類中傳遞的參數的sum或multiplication。 下面的例子可以幫助我在類中執行動作,但是我無法找到任何幫助我將父類繼承到子類的文檔。在Python 3中嵌套的類3

最近我遇到一篇文章,其中突出顯示「嵌套類無法在編譯時訪問其外部類的任何成員。」「。有沒有更好的方法來傳遞類之間的值?我嘗試使用全局變量,但是想要避免設置許多全局變量,而我按比例縮放這個邏輯來提取我的整個數據中心的庫存,執行一些計算並再次傳遞給另一個類。

class Class1: 
    firstnumber=0 
    def __init__(self,arg): 
     self.firstnumber=arg 

    class Class2: 
     def __init__(self,arg): 
      self.secondnumber=arg 

     def sumit(self): 
      return Class1.firstnumber+Class1.Class2.secondnumber 


print(Class1(5).firstnumber) 
print(Class1(6).Class2(4).secondnumber) 

print(Class1(4).Class2(10).sumit()) 

我想與 的Class1執行計算(變量1).Class2(變量2).Class3(variable3)的.sum()或 的Class1(變量1).Class2(變量2).Class3(variable3)。多個(),並最終能夠做到以下

數據中心( 'DC1')。GetServer( '服務器名稱')。GetStorageCapacity( 'NFS')。使用() 數據中心( 'DC1')。GetServer(「服務器名稱').GetStorageCapacity(' NFS「)。免費()

http://momentaryfascinations.com/programming/bound.inner.classes.for.python.html

+0

看起來像是你的錯誤理解。你引用的文件是正確的。你試圖解決的問題並不需要嵌套類。 –

+0

感謝您的建設性反饋。 – Atulac

回答

-1

我可能是錯的,但根據我的理解,您在類()和init聲明之間放置的任何內容都是永久且不可更改的。你不需要爲每個數字創建單獨的類。創建同一個類的不同實例。

class numbers: 
    def __init__(self,arg): 
     self.arg = arg 

C1 =數字(3) C2 =數字(5)

我不知道如何將添加ARG變量一起也許別人可以在我錯過了什麼我填。

+0

我選擇了數字示例以使其具有通用性。我們在全球不同城市擁有數據中心。我想從這些數據中心使用的不同工具中檢索數據。如果有人幫助我使用嵌套類,它可以幫助我查詢並使用以下Datacenter('DC1')檢索這些服務器的服務器,存儲和其他詳細信息:GetServer('ServerName')。GetStorageCapacity('NFS')。Used () – Atulac