如何允许python文件导出以后可以导入的特定函数? [复制]

Posted

技术标签:

【中文标题】如何允许python文件导出以后可以导入的特定函数? [复制]【英文标题】:How to allow python file to export specific functions that can be imported later? [duplicate] 【发布时间】:2021-11-06 05:50:21 【问题描述】:

假设我在 python 文件中有 2 个函数和一个全局变量。如何只允许导出一个函数?

g = 47
def A():
    print('a')

def B():
    print('b')

假设上面的文件被命名为try.py。 我想限制来自 try 模块的所有导入,函数 A 除外。

【问题讨论】:

在你的私有函数名称前加上一个下划线,将它们标记为私有(只是一种做法),没有办法阻止它导入。 【参考方案1】:

使用__all__:

__all__ = ["stuff", "to", "export"]

<your code>

并不是说如果 __all__ 中有未定义的内容,就会引发 AttributeError。

【讨论】:

请注意,__all__ 不会阻止导入任何内容……

以上是关于如何允许python文件导出以后可以导入的特定函数? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何区分python中的导入和函数定义?

Python:将图形导入 Excel 并将整个工作表导出为 EPS

phpmyadmin 不允许导入/导出文件

Python 怎么获取json 里的特定的某个值

ArangoDB - 如何将neo4j数据库导出导入ArangoDB

我现在想把自己写的python模块源代码封装成dll,然后在别的python脚本里调用,可以吗?