jupyter或者python文件导入其他python文件模块中方法路径问题

一 使用绝对导入(通用性更好,更推荐在多种场景下使用)

无论你的项目目录是否严格符合 Python 包结构,都可以通过把目标模块所在的目录添加到 sys.path 中,然后进行绝对导入。例如,假设 aaas.py 文件在 C:/my_project/aaa/aa/aa 这个目录下(这里以 Windows 路径示例,你可以替换为实际的路径格式和具体路径),在其他 Python 文件或者 Jupyter Notebook 等环境中要导入它,可以这样操作:

python 复制代码
import sys
sys.path.append("D:\winhzq\桌面\笔记本资料\OPenMMlab\AAAA")

import torch    
import torch.nn as nn
import torch.nn.functional as F
import torch.fft


from layers.Embed import DataEmbedding
from layers.Conv_Blocks import Inception_Block_V1   
            #convolution block used for convoluting the 2D time data, changeable

上面代码是什么意思呢,定义了一个绝对路径D:\winhzq\桌面\笔记本资料\OPenMMlab\AAAA,下面导入的模块内容以这个AAA文件为根目录,layers是一个文件夹,Embed是后缀为.py的文件,这样就可以正常导入Embed.py文件的class模块了。

二 简单一些使用..表示

from ..AAA import BBB

表示要导入当前文件的上一个文件AAA.py中的一个class模块方法。

举一个例子:

from ...exp.exp_anomaly_detection import Exp_Anomaly_Detection

..两个点表示移动上移一个文件夹,在加一个点是在上移一个文件夹,所以上移两个文件夹是...

同理以此类推...exp.中exp后面一个点表示exp文件中下面的exp_anomaly_detection.py文件,然后导入方法

相关推荐
m0_716430072 分钟前
Redis如何处理预热失效引起的开局雪崩
jvm·数据库·python
m0_377618234 分钟前
c++文件锁使用方法 c++如何实现多进程文件同步
jvm·数据库·python
gmaajt9 分钟前
mysql多字段搜索如何设计组合索引_mysql索引查询加速
jvm·数据库·python
2301_777599379 分钟前
MySQL如何快速排查慢查询安全隐患_分析slow_query_log进行优化
jvm·数据库·python
m0_7478545211 分钟前
如何检测受保护链接(如 Twitter)的可访问性
jvm·数据库·python
baidu_3409988213 分钟前
宝塔面板如何设置网站访问密码_配置Nginx认证保护目录
jvm·数据库·python
2301_7775993717 分钟前
Python闭包是什么_深入理解Python闭包原理与变量作用域
jvm·数据库·python
HHHHH1010HHHHH17 分钟前
mysql事务回滚与存储引擎的关系_mysql回滚机制分析
jvm·数据库·python
用户83562907805121 分钟前
Python 操作 PowerPoint:添加与设置文本框完整教程
后端·python
InfinteJustice32 分钟前
SQL如何处理分组后的空值统计_善用COALESCE与聚合函数
jvm·数据库·python