Python相对导入报错怎么解决

  介绍

本篇内容主要讲解“Python相对导入报错怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python相对导入报错怎么解决”吧!

相对导入

相对导入是指在同一个项目下不同模块之间相互导入,称为相对导入。

相对导入的案例

项目结构图如下:

 Python相对导入报错怎么解决”>
  </p> <p>项目名称项目,该目录下有xx子项目和test.py模块。其中xx子目录下有y和z两个子目录,y子目录下有abc.py模块和yy.py模块,z子目录下有zz.py模块.yy.py是xx子项目的入口.test.py是整个项目的入口。</p> <p> test.py模块的内容</p> <pre>“““
  此模块是整个项目项目的入口
  “““
  
  得到xx.y  import  yy
  
  yy.f2 ()
  打印(yy.num1, yy.num2, yy.num3)
  
  :
  123
  10
  你好
  10,123,888 </pre> <p> yy.py模块的内容</p> <pre>“““
  此模块是xx子项目对外引用的入口
  “““
  
  得到.abc  import  *
  得到. . z.zz  import  *
  
  num3 =888
  
  
  def  f2 ():
  ,,,印刷(num2)
  ,,,印刷(num1) </pre> <p> zz.py模块的内容</p> <pre>“““
  子项目,被导入的子模块
  “““
  
  num1 =10
  
  
  def  f ():
  ,,,print(& # 39;你好# 39;)</pre> <p> abc.py模块的内容</p> <pre>“““
  子项目,被导入的子模块
  “““
  
  num2  123=, </pre> <p>以上就是模拟大型项目的框架结构,测试运行test.py模块可以看到输出正常,完全没有问题。</p> <p>请仔细看yy。py模块的内容:</p> <p>从.abc进口*语句:<强>。表示当前目录</>强劲,美国广播公司(abc)表示abc。py模块。</p> <p>从. . z。zz *导入语句,<强> . .表示父目录</>强,z表示z文件夹,zz表示zz.py模块。</p> <p>另外<>强…表示祖父目录</>强,请熟悉的路径标识结构。</p> <p> <强>相对导入</强>:以。开头的语句,例如从.abc导入*。</p> <p> <>强绝对导入</强>:以文件夹或包或模块名开头的语句,例如从xx。y进口yy。</p> <p>以上暂未遇到报错,可如果你尝试调试yy.py模块,直接运行yy。py模块时会报错。</p> <p> <img src=Python相对导入报错怎么解决