2013-03-31 73 views
0

這是我正在處理的場景。
有一個叫做Service的類。基本上,只有一個這樣的對象可以由節點創建。一旦創建了這個對象,它就從一個節點傳遞到另一個節點。如何在python中提供此訪問說明符保護?

Class Service: 
int valueOfA=0; 
int valueOfB=0; 
int valueOfC=0; 
int valueOfD=0; 

現在,讓我們說一個實例化這個類的對象obj。現在甲應該能夠僅遞增

obj.valueOfA++ 

同樣乙應該能夠僅遞增

obj.valueOfB++ 

但是,任何節點可以讀取A或B或C的在此,每個節點由標識的值其IP地址。含義節點A具有單獨的IP地址,節點B具有單獨的IP地址等等。

我該如何在Python中實現這樣的東西?

回答

1

Python沒有自動訪問說明符保護,如publicprivate。但是你總是可以使用一種方法來實現邏輯。這樣做:

def incrementA(self, node): 
    if node.name == "Node A": self.valueOfA += 1 
    else: raise ValueError("node is not authorized to increment A") 

而且,Python有沒有++運營商。您需要使用+=來增加。

+0

謝謝你。這是我第一次用python編程,我只是想看看python是否有這樣的魔力 –