Spyder启用模块重载器仍然会出现自定义模块无法重载的问题,最后发现是导入方式的问题,解决办法是第一种:直接使用import导入模块,注意import导入时最后的对象一定是module,对象为包或者方法时都会报错;第二种是可以使用from …import…,被导入模块下要有__init__.py,内容可以为空。
参考文献:听说你还在找python中import与from方法?
这篇文章主要介绍了python中import与from方法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一、模块&包简介
模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from)。
包(package): 包是更大的组织单位,用来组织区别管理多个模块文件。
import 用来导入模块
from 用于从模块中导入方法(全部或部分),也可用as 重命名导入的方法
二、import&from使用方法
- import使用方法:
*import 模块 [as 别名模块]
*import 包.[N包].模块;
注:import 导入 最后一个必须是模块,而不能以包结尾
a)导入单模块文件(import 模块 [as 别名模块])import导入单模块文件后,在import时会执行模块中的代码(从上到下)
b)导入包中的模块(import 包.[N包].模块)import导入包中的模块时,首先会执行包下的__init__.py 注:init.py :用来给包做一些初始化的工作。可以为空,但必须要有
c)导入 包.包.模块import导入多层包中的模块时,会执行各包下的__init__.py
d)导入 包.包 出错
2. from使用方法:
*from 包.[…包] import 模块
*from 包.模块 import 方法
*from 模块 import 方法。
注:from 包 import *时,受__init__.py中的__all__影响,没有列出来的模块是没法导入引用的。