Python是否有一个约定,将方法声明为可以从类外部访问,但不能从程序外部访问?

2024-04-23 07:10:07 发布

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

与许多语言一样,Python有将方法声明为private、protected或public的约定。C#另外还有“内部”方法,这些方法可以从类外部访问,但不能从程序外部访问

Python中的私有和受保护的方法并不是强制的,它们只是一种命名约定。Python是否有类似的约定来声明一个方法应该可以从类外部访问,而不是公共接口的一部分?Python中的公共方法是否假定为公共接口的一部分


Tags: 方法程序语言声明privatepublic命名protected
1条回答
网友
1楼 · 发布于 2024-04-23 07:10:07

模块级的私有函数可能有帮助吗

f.py

def __privFunc():
    print 'Yes'

def func():
    print 'Yolo'

默认情况下,__privFunc不导入

>>> from f import *
>>> __privFunc()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name '__privFunc' is not defined
>>> func()
Yolo

相关问题 更多 >