在Python中,如果要引用一些内置的函数,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块。
引入模块的优点:
1.提高了代码的可维护性
2.提高了代码的复用度,一个完整的模块可以被多个地方引用
3.避免函数名和变量名的冲突
一、模块的引入
在Python中用关键字import来引入某个模块,比如要引用模块time,就可以在文件最开始的地方用import time来引入。在调用time模块中的函数时,必须这样引用:模块名.函数名
#引入模块
#import语句
#格式:import module1[module2,module3,[......modulen]]
#引入了自定义模块,不用加.py后缀
#注意:一个模块只会被引入一次,不管执行了几次import,这样防止模块被多次引入
#使用模块中的内容
#格式 模块名.函数名/变量名
import tom
tom.sayGood()
tom.sayNice()
tom模块:
def sayGood():
print('tom is a good man')
def sayNice():
print('tom is a nice man')
运行:
tom is a good man
tom is a nice man
二、引入自定义模块(一)
#from... import语句
#作用:从模块中导入一个指定的部分到当前命名空间
#格式: from module import name1[,name2[,...namen]]
from tom import sayGood,sayNice
sayGood()
sayNice()
运行:
tom is a good man
tom is a nice man
引入自定义模块(二)
#from.......import*语句
#作用:把一个模块中所有的内容全部导入当前命名空间
from tom import*
#不建议使用
#程序内容的函数可以将模块中同名的函数覆盖
def sayGood():
print('@@@@@@')
sayGood()#看下面运行结果,这个方法的打印被覆盖
tom模块
def sayGood():
print('tom is a good man')
def sayNice():
print('tom is a nice man')
运行:
@@@@@@
三、__name__属性
'''
__name__属性:
模块就是一个可执行的.py文件,一个模块被另一个程序引入
想让模块中的某些代码执行,可以调用__name__属性来使程序仅调用模块中的一部分
'''
import tom
tom.sayGood()
tom模块
#一个.py文件就是一个模块
#每一个模块都有一个__name__属性,当其值等于"__main__"时,
# 说明该模块自身在执行,否则被引入了其他文件
#当前文件如果为程序的入口文件,则__name__属性的值为__main__
if __name__ == "__main__":
print("这是tom.py文件")
else:
print(__name__)#注意看这里打印出的
def sayGood():
print('tom is a good man')
def sayNice():
print('tom is a nice man')
运行:
tom
tom is a good man