【发布时间】:2025-11-29 10:35:01
【问题描述】:
(我查看了Does Python have “private” variables in classes?——它询问的是类而不是模块。因此,那里的答案不包括我感兴趣的import。)
考虑一下,有一个名为X 的模块带有变量y。如果任何其他模块尝试import 模块X,如何避免在Python 中加载变量y?
例如:
# x.py
y=10
然后我们在其他模块中使用它:
import x
print x.y
如何避免从模块 x.py 访问 x.y ?
【问题讨论】:
-
加载变量
y有副作用吗?你知道__all__变量吗? -
@memoselky,是的,我想隐藏在模块中导入的特定变量,但我不知道
__all__ -
一些示例代码会极大地改善这个问题。目前尚不清楚确切的需求是什么。
-
该问题的版主将其标记为“Python 是否在类中有‘私有’变量?”显然不知道Python。这个问题不是那个问题的重复。版主显然对 Python 非常无知,以至于他们不知道“类”和“模块”之间的区别。如果你问我,这种情况是相当可悲的。顺便说一句,ivan_pozdeev 在下面提供了正确的答案。
标签: python python-2.7 python-3.x