二、Python __init__.py 作用详解
https://www.cnblogs.com/Lands-ljk/p/5880483.html
__init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。
通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件。这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入。
一、import py脚本文件
同一个文件下的所有脚本文件,都可以用绝对导入。
提倡用绝对路径导入,比较清晰简单,相对路径有一些坑。
#方法一:绝对导入
from a.a2 import run
#注意:如果当前目录是exer的上一级目录,则要修改为:from exer.a.a2 import run
#绝对导入就是从当前目录的下面一级导入的。
run('a') #方法二:相对导入 也出错
# from .a2 import run
# run('a')
# ModuleNotFoundError: No module named '__main__.a2'; '__main__' is not a package #不可以
# import exer.a.a2
# a2.run('abc')
# NameError: name 'a2' is not defined #不可以
# import a.a2
# a2.run('abc')
# ModuleNotFoundError: No module named 'a'
文件路径如下: