什么是python中的绝对导入?

什么是python中的绝对导入?,第1张

什么是python中的绝对导入

此处

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

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

import os, sysfrom datetime import datetimefrom my_package.module import some_function

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

from .module_in_same_dir import some_functionfrom ..module_in_parent_dir import other_function

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


有人在评论中要求我提供一个示例,说明

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

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



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5647669.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存