1、from … import 导入

from package import module1, module2, module3, … …

此种导入方法不执行 __init__ 的内容。

from pkg01 import p01
p01.sayHello()

2、from package import *

导入当前包 __init__.py 文件中所有的函数和类。

使用方法

func_name()
class_name.func_name()
class_name.var

3、import package.module

导入包中某一个具体的模块。

使用方法

package.module.func_name
package.module.class.fun()
package.module.class.var

知识点扩展:

模块的导入方式

模块就是.py类型的Python文件
导入时不需要.py后缀,直接导入文件名即可
利用import直接导入:
语法:import module_name
使用方式:module_name.class_name或者module.func_name
利用import导入模块并设置一个别名
语法:import module_name as XXX
使用方式:XXX.class_name或者XXX.funct_name
借助from复制模块的属性,可以实现只导入模块中的部分类或函数或变量
语法:from module_name import class_name, funct_name
使用方式:直接调用函数或实例化类即可
但要注意,from把变量从模块中导入后,会导致相同名称的变量被覆盖,也就是说不同模块的命名空间会在此处重叠。
借助from…import *导入模块全部内容
语法:from module_name import *
使用时直接调用函数或实例化类即可
借助importlib模块实现导入以数字开头的模块
语法:import importlib
XXX = importlib.import_module(“module_name”)
使用时XXX.class_name或者XXX.func_name

包的导入方式

包就是包含很多模块的文件夹
包内还可以有子包
利用import直接导入包(仅仅导入__init__.py中的内容)
语法:import package_name
直接导入一个包,仅仅可以使用_init_.py中的全部内容
使用:package_name.func_name 或者 package_name.class
导入包中的某一个模块
语法:import package_name.module_name
使用:package_name.module_na112afme.func_name或
package_name.module_name.class_name

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。