gpt4 book ai didi

python - 在 Python 中,如何使用兄弟文件的相对导入并为其命名?

转载 作者:太空宇宙 更新时间:2023-11-04 05:39:49 25 4
gpt4 key购买 nike

当我有这样的包裹时:

somemodule/
somemodule/__init__.py
somemodule/animals.py
somemodule/cats.py
somemodule/dogs.py

我在 cats.py 文件中,我可以使用相对导入来导入整个 animals.py 文件吗?也就是说,我怎样才能做类似的事情(这不起作用):

# in cats.py
import .animals as animals
animals.make_zoo()

我知道我可以执行以下操作并挑选特定功能,但我不喜欢这个:

# in cats.py
from .animals import make_zoo
make_zoo()

我也知道我可以执行以下操作,但这些不使用相对导入:

# in cats.py
import animals
animals.make_zoo()

# in cats.py
import somemodule.animals as animals
animals.make_zoo()

动机

当我编写从模块导入代码的 Python 代码时,我更喜欢导入整个模块,而不是提取特定的函数或变量。例如:

# i like this:
import sys
print(sys.argv)

# i don't like this
from sys import argv
print(argv) # where did argv come from!?!

我的推理是符号中的模块名称向读者提示他们可以在哪里找到它的实现。这是否好不是问题。

最佳答案

你可以做到 from . import animals , 或者,如果你想使用 as选择不同的名称 from . import animals as blah .

关于python - 在 Python 中,如何使用兄弟文件的相对导入并为其命名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34318712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com