您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

什么是python中的绝对导入?

什么是python中的绝对导入?

此处absolute和之间的区别与relative我们谈论绝对和相对文件路径甚至URL的方式非常相似。

绝对的{import,path,URL}通常会通过指定每个部分来 告诉您如何获得所需的东西:

import os, sys
from datetime import datetime
from my_package.module import some_function

相对的{imports,paths,URLs}就是它们所说的:它们是 对于当前位置的。也就是说,如果目录结构更改或文件移动,它们可能会中断(因为它们不再意味着同一件事)。

from .module_in_same_dir import some_function
from ..module_in_parent_dir import other_function

因此,绝对导入是首选的共享代码

有人在评论中要求我提供一个示例,说明from __future__ import absolute_import如何与之关联以及如何使用它。在尝试阐述此示例时,我意识到我也无法完全解释其行为,因此我提出了一个新问题此答案给出了一个代码示例,该示例显示正确工作的实现from __future__ import absolute_import,在其中实际上解决了歧义。

公认的答案将更详细地说明其工作原理,包括讨论Python 2.5 changelog的措辞混乱。从本质上讲,此指令的范围(以及通过扩展在Python中绝对导入和相对导入之间的区别)非常狭窄。如果发现自己需要这些区别来使代码正常工作,则最好重命名本地模块。

python 2022/1/1 18:30:59 有194人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶