“专业人士笔记”系列目录:创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!zhuanlan.zhihu.com
模块是包含定义和语句的可导入文件 ,可以通过创建.py文件来创建一个单独的用户自定义模块。
如下代码:
#hello.py
def say_hello():
print("Hello!")
模块中的函数可以通过导入模块来使用
对于创建的用户自定义模块,它们需要与准备导入此模块的其他文件位于相同的目录中(但是,你也可以将它们与Python内置模块一起放到Python lib目录中,但是应该尽可能避免这样做,以区分内置模块和用户自定义模块)
可以这样调用模块:
import hello
print(hello.say_hello())
#输出 'hello'
当然,模块也可以由其他模块导入:
#这是另外一个文件,greet.py
import hello
hello.say_hello()
也可以只导入模块中的特定函数:
# greet.py
from hello import say_hello
say_hello()
导入的模块可以被重命名:
# greet.py
import hello as ai #重命名为ai了
ai.say_hello()
模块可以是完全独立的可运行脚本:
#创建一个单独的run_hello.py文件
if __name__ ==__'main__':
from hello import say_hello
say_hello()
上面这个模块,可以直接单独运行:
#进入云环境交互模式:
$ python run_hello.py
=> "Hello!"
这里解析一下上面语句的写法:
1、__name__ ==__’main__’,这条语句是python固定入口的写法,这样写相当于指定该模块是整个程序的入口函数,如果你学习过Java,那么对于java的入口函数main函数应该很熟悉,两个作用是一样的
2、注意:如果模块位于一个目录中,此时如需要在当前目录中其他文件中引用,那么该目录需要包含一个名为__init__.py的文件,向python解析器表示本目录间有相互引用;而关于__init_.py文件中的内容,你完全可以空着,只是需要新建有这个文件就可以了
好了,今天的分享就到这里,禁止转载,违者必究