Python 导包 from xx import xx 知识点以及循环导入问题

from 模块 import *
表示可以使用模块里面的所有内容,如果没有定义__all__所有的都可以访问,
但是如果添加上了__all__,只有__all__=[’ ’ ,’ ']列表中可以访问。

from 包 import *
表示该包中内容(模块)是不能访问的,就需要在__init__.py文件中定义__all__
=[可以通过访问的模块]

举例:
包:
user
… |–init.py 只要包的导入,都会默认执行__init__.py文件
… ||–xxx.py
… ||–xx.py
… | |–add

article
…|–aa.py
…|–bb.py

from user.xx import add (调用add函数)
add()

避免循环导入的问题

循环导入:大型的python项目中,需要很多python文件,在同名的情况下,
可能会出现死循环重复导入问题。

避免产生循环导入:
1.重新架构
2.将导入语句放到函数里面
3.把导入语句放到模块的最后

你可能感兴趣的:(Python,python)