避免python导入中命名空间元素的重复

2024-06-06 12:24:01 发布

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

这可能是我作为c#程序员时留下的痕迹,我可能只需要学习“pythonic”的做事方式。我对python比较陌生,但多年来一直在用c#编写代码

我的项目中有一个名为“applib”的python模块,我在其中存储了许多类。每个类都包含在自己的同名文件中(例如,Foo.py有一个名为Foo的类,Bar.py有一个名为Bar的类,等等)

当我想使用一个类时,我必须说

import applib.Foo

然后是

my_foo=applib.Foo.Foo()

这导致在我的声明中必须指定两次“Foo”(一次用于模块名,另一次用于类)。在c#中,我可以通过类文件顶部的名称空间指令来控制这一点,但在python中,除了将所有类放在一个文件中之外,我不知道如何控制这一点。我知道我也可以使用

from applib.Foo import Foo

但这仍然是名称空间元素的重复,我希望完全避免这种情况

有谁能给我一些关于应用程序中名称空间结构的更具Python风格的方法的建议吗


Tags: 模块文件代码pyimport名称foo方式