模块
模块是一个包含所有你定义的函数和变量的文件,其后缀名是py。模块可以被别的程序引入,以使用该模块中的函数等功能,这也是使用 python 标准库的方法。总之,之所以需要模块,就是因为代码和变量不能全部在一起管理,需要分块管理。如下实例:
#save as mymodel.py
def myModel():
if __name__ == '__main__':
print("I am called by myself!")
else:
print("I am called by other!")
这个文件保存之后,在所在目录打开命令行,输入如下:
>>> from mymodel import *
>>> myModel()
I am called by other!
在此处我们可以使用mymodel中的内容,包括函数和变量。当然,如果模块中定义私有变量,我们一般以_或者__开头,习惯认为他们是私有变量。
import
三种常用方式,import XX,from XX import YY,from XX import *。第一种代表导入XX的全部,并且使用的时候,需要使用XX.xx调用模块中的内容;第二种不需要导入XX模块的所有内容,只需要导入YY即可;第三种导入XX中的全部,并且,相当于XX中的所有内容都可以使用,不需要前缀。平时开发推荐第二种!
__name__属性
- __name__属性代表当前执行模块的名字,比如:
#save as mymodel.py
def myModel():
print(__name__)
if __name__ == '__main__':
print("I am called by myself!")
else:
print("I am called by other!")
我们将这个模块导入,调用此方法,输出:
>>> import mymodel as mm
>>> mm.myModel()
mymodel
I am called by other!
如果此方法不是作为模块被调用,那么它输出是__main__。