6.1-初识模块:
在Python中,一个.py文件就称之为一个模块(Module)。
使用模块的好处:
- 最大的好处是大大提高了代码的可维护性。
- 编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。在编写程序的时候,也经常引用其他模块,包括Python内置的模块和来自第三方的模块。
Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三种:
- Python内置标准模块(又称标准库)
- 业内开源的模块
- 程序员自己开发的模块
说明:
import语句作用就是用来导入模块的,它可以出现在程序中的任何位置。
导入模块例子:
1.py文件:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import hello
hello.py文件:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
print("hello,world")
运行结果:
执行脚本传入参数:
Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行python脚本时传入的参数。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
print(sys.argv)
运行结果:
6.2-初识字节码:
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。
第一次在没有字节码的时候,执行导入的.py文件时,它会自动生成一个字节码,以后在执行程序时会先在当前目录下寻找有没有同名的pyc文件,如果找到了,则直接进行运行,这样执行的速率就快了,否则重复上面的工作。
因为Python认为只要是import导入过来的文件,就是可以被重用的,那么它就会将这个文件编译成pyc文件。
python会在每次载入模块之前都会先检查一下py文件和pyc文件的最后修改日期,如果不一致则重新生成一份pyc文件,否则就直接读取运行。
代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。(任何字节码通过反编译都可以得到代码)