在C++中我会写:
namespace LowerLevel{
int DoStuff() {}; //
}
Run Code Online (Sandbox Code Playgroud)
并通过以下方式访问:
LowerLevel::DoStuff()
Run Code Online (Sandbox Code Playgroud)
我如何在Python中执行这两项操作?
精神上最接近的是使用模块.
在lower_level.py你有的文件中
def do_stuff():
pass
Run Code Online (Sandbox Code Playgroud)
然后你会做其他事情:
import lower_level
lower_level.do_stuff()
Run Code Online (Sandbox Code Playgroud)
EDIT/addendums:这是一种简单的方法.有像包这样的东西,你有一个文件夹lower_level,在那个文件夹里面是一个__init__.py标识lower_level为一个包.在该软件包中,您将拥有.py可以作为模块的文件,或者您将某些导入和声明放入其中__init__.py.但它也可以保持空洞.我猜包会相当于嵌套的命名空间.
- prog.py
\MyNameSpaceA
- __init__.py # just an empty file
- ObjA.py # A python Module
\SubPackageB
- __init__.py
- ObjB.py # another python module
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1090 次 |
| 最近记录: |