jupyter大概python文件导入其他python文件模块中方法路径问题 ...

铁佛  论坛元老 | 2024-12-17 14:02:45 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1029|帖子 1029|积分 3087

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

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


无论你的项目目次是否严酷符合 Python 包结构,都可以通过把目的模块所在的目次添加到 sys.path 中,然后进行绝对导入。例如,假设 aaas.py 文件在 C:/my_project/aaa/aa/aa 这个目次下(这里以 Windows 路径示例,你可以替换为现实的路径格式和详细路径),在其他 Python 文件大概 Jupyter Notebook 等环境中要导入它,可以这样操作:
  1. import sys
  2. sys.path.append("D:\winhzq\桌面\笔记本资料\OPenMMlab\AAAA")
  3. import torch   
  4. import torch.nn as nn
  5. import torch.nn.functional as F
  6. import torch.fft
  7. from layers.Embed import DataEmbedding
  8. from layers.Conv_Blocks import Inception_Block_V1   
  9.             #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文件,然后导入方法



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

铁佛

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表