首页 > 解决方案 > 我可以从另一个文件中导入两个下划线变量吗?

问题描述

abc1234.py

__foo__ = "bar"

测试1234.py

import abc1234
print abc1234._abc1234__foo__

它不起作用。如何解决?

标签: python

解决方案


第一点:名称修改仅对类调用,而不是对模块调用。

第二点:仅对具有 2 个前导下划线且没有尾随下划线的名称调用它 - 双双下划线名称(ak__magic__名称)保留用于实现。

此外,实际上很少有真正的名称修饰用例,因此对于“非公共”名称,最好坚持使用单前导下划线约定(python 相当于“受保护”)。


推荐阅读