Python-模块,,定义:略!先来一个模


定义:略!

先来一个模块spam.py

技术分享
#spam.pyprint(‘from the spam.py‘)money=1000def read1():    print(‘spam模块:‘,money)def read2():    print(‘spam模块‘)    read1()def change():    global money    money=0
spam.py

import spam    (从硬盘将spam读到内存中,执行一遍)

导入后,从上至下执行模块内部所有的代码。

结果是:from the spam.py

但是,在第二次导入的时候,就不用在执行模块里面的代码了。因为之前该模块已经加载过。

import spam #m1=111111import spam #m2=m1import spamimport spam

总结:

# 导入模块,只会在第一次导入时执行源文件的代码# 如果模块已经加载到内存了,下一次导入直接引用内存中导入的结果

下面看内存当中都加载了哪些模块:

import sysprint(sys.modules)print(‘spam‘ in sys.modules)

字典形式列出;里面有上面的spam模块,因为spam之前已经加载完成了。

接下来,名称空间:

运行一个执行文件就会产生一个名称空间。import后又产生一个名称空间,至此这个“模块的使用.py”执行文件产生了两个名称空间,且两个内存空间是互相独立的。

#import 导入文件都做了哪些事?#1 以源文件(spam.py)为准产生一个名称空间#2 以刚刚产生的名称空间为准,执行源文件的代码#3 会在当前文件中定义一个名字,这个名字就是模块名,用来引用模块中的名字

Python-模块

评论关闭