vscode中python无法读取自定义模块

vscode中python无法读取自定义模块

问题描述

对于执行文本test.py与模块ptb_test.py分别在独立的目录下(模块在自定义包中)时(如图),如果在test.py中执行“from calculate_entropy import pywt_test”,会出现“ModuleNotFoundError: No module named ‘calculate_entropy’”的错误
工程目录

问题分析

这是因为test.py会从当前文件所在目录和系统路径“sys.path”中搜索,因此我们需要在执行文件前/时将pywt_test.py的包加入到系统路径“sys.path”中

import os.path as osp
import sys

def add_path(path):
    if path not in sys.path:
        sys.path.append(path)
        # print(sys.path)

this_dir = osp.dirname(__file__)
lib_path = osp.join(osp.dirname(this_dir), 'calculate_entropy')
add_path(lib_path)

同时,不要“from calculate_entropy import pywt_test”,而是直接加载包就可以了“import ptb_test”。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值