一般使用import和from...import...导入模块。
以下述spam.py内的文件代码为例。
一、import 模块名
import首次导入模块发生了3件事:
以模块为准创造一个模块的名称空间
执行模块对应的文件,将执行过程中产生的名字都丢到模块的名称空间
在当前执行文件中拿到一个模块名
模块的重复导入会直接饮用之前创造好的结果,不会重复执行模块的文件,即重复导入会发生:spam=spam=模块名称空间的内存地址
导入多个模块
二、from 模块名 import 具体的功能
from...import...首次导入模块发生了3件事:
以模块为准创造一个模块的名称空间
执行模块对应的文件,将执行过程中产生的名字都丢到模块的名称空间
在当前执行文件的名称空间中拿到一个名字,该名字直接指向模块中的某一个名字,意味着可以不用加任何前缀而直接使用
优点:不用加前缀,代码更加精简
缺点:容易与当前执行文件中名称空间中的名字冲突
导入文件内所有的功能:
三、import和from...import...的异同
相同点:
两者都会执行模块对应的文件,两者都会产生模块的名称空间
两者调用功能时,需要跑到定义时寻找作用域关系,与调用位置无关
不同点
import需要加前缀;from...import...不需要加前缀
如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h64148.shtml