在python中可以方便的使用‘模块’来共享代码。使用模块首先要会建个模块,模块以.py为后缀的文件。例如新建个模块,mymath
def fio(n):#n>=2
lis=[1,1]
for i in range(2,n):
lis.append(lis[-1]+lis[-2])
print(lis)
if __name__=='__main__':
fio(3)
定义了一个计算前n项斐波那契数列的函数。命名为fio.py。当需要使用这个模块时
import fio
if __name__=='__main__':
fio.fio(4)
通过import
引入了fio模块.import的使用只需在后面跟上要引入的模块名就可以,一个模块只能被引入一次,也就是说无论import同一模块多少次效果是一样的.当引入时python是依据一定路径去搜索的它被储存在sys模块的path变量.
def fio(n):
lis=[1,1]
for i in range(2,n):
lis.append(lis[-1]+lis[-2])
print(lis)
def cheek(n):
print(n)
#import fio
if __name__=='__main__':
fio(4)
现在我们在fio.py中新增一个cheek函数,这时如果只想引入fio函数那么可以from fio import fio
如果要倒入所有的函数\变量,可以用from ... import *
例如
def fio(n):
lis=[1,1]
for i in range(2,n):
lis.append(lis[-1]+lis[-2])
print(lis)
def cheek(n):
print(n)
a=fio(4)
#import fio
if __name__=='__main__':
fio(4)
在fio.py中声明了a,那么在
from fio import *
print(a)
中可以直接用a 的值,但是由_
开头的变量不会被引入.
在上面的例子中可以发现if __ name __ ==' __ main __':
的语句,每个模块都有一个__name__属性,当其值是’main’时,表明该模块自身在运行,否则是被引入。name 与 main 底下是双下划线,是“_ _”去掉中间的空格.