同一目录下调用.py中报错 ‘No modular name xxx’

同级python文件调用

已使用sys进行调用,(相对路径)

import os
import sys
sys.path.append('.../utils/')
from utils.a import a

但无法解决问题
当执行import ×××操作时,默认情况下python解析器会搜索当前目录、已安装的内置模块和第三方模块,搜索路径存放在sys模块的path中,sys.path是一个列表,如下图所示。如果要import的×××不在以下列表就会报错。

解决方法:目录下加空白的__init__.py

原因: python 3.3以后的版本,你要是建立一个python程序包的话,它会自动隐式地给你添加 init.py文件.但如果你运行的python解释器比3.3早的话, 比如python2.7, 那么如果你不手动添加 init.py 文件它就不会添加, 于是会找不到包, 因为 init.py 文件是python认为这文件夹是包的标志。

但我安装的是3.7的版本,并且另一个文件夹下的py文件可调用。具体原因不太了解,该方法可以解决我的问题。

其他利用pycharm进行修改的方法无法解决问题。
且用import .xxx from yyy的方法也无法解决,主要原因是加.的方法主要针对python2,而无法解决python3的相关问题。

其他解决方法:https://blog.csdn.net/qq_44886213/article/details/123349273

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值