如何在python中提供这种访问说明符保护?

2024-10-04 05:20:07 发布

您现在位置:Python中文网/ 问答频道 /正文

以下是我当前处理的场景。
有一个类叫做服务。基本上,一个节点只能创建其中的一个对象。一旦创建了这个对象,它就从一个节点传递到另一个节点。在

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

现在,假设A实例化了这个类的对象obj。现在A应该只能递增

^{pr2}$

同样地,B应该只能递增

 obj.valueOfB++

但是任何节点都可以读取A、B或C的值。这里每个节点都由其IP地址标识。这意味着节点A有一个单独的IP地址,节点B有一个单独的IP地址,以此类推。在

如何在python中实现这样的功能?在


Tags: 对象实例功能obj节点service场景标识
1条回答
网友
1楼 · 发布于 2024-10-04 05:20:07

Python没有自动访问说明符保护,比如public或{}。但是,您始终可以使用方法自己实现逻辑。做一些类似的事情:

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

而且,Python没有++运算符。您需要使用+=来增加。在

相关问题 更多 >