Python函数:它们可以被私有化吗?

2024-06-28 19:01:07 发布

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

我需要一个只在类中使用的函数。可以像其他方法一样定义它,还是最好将它隐藏在某个地方

class Test:

    def __init__(self,a,b):
        self.a=a
        self.b=b

    def sayhi(self):
        print('hi')

    def printa(self,c):
        self.sayhi()
        print('A+C=',self.a+c)

    def printb(self,c):
        self.sayhi()
        print('B+C=',self.b+c) 

Tags: 方法函数testself定义initdef地方
2条回答

与java和其他一些面向对象语言不同,Python没有私有方法。 您只需在方法名称之前添加下划线,以指示它是私有方法。注意:这只对你有意义,被口译员忽略了。仍然可以在类外部调用该方法

使其成为“私有”功能

使用python约定通过契约将函数设置为“私有”

https://dbader.org/blog/meaning-of-underscores-in-python

class Test:
    def __init__(self,a,b):
        self.a=a
        self.b=b

    def _sayhi(self):
        print('hi')

    def printa(self,c):
        self._sayhi()
        print('A+C=',self.a+c)

    def printb(self,c):
        self._sayhi()
        print('B+C=',self.b+c) 

相关问题 更多 >