模块是Python程序架构的一个核心概念。(言外之意模块在Python中很重要)
模块就好比是工具包,要想使用过这个工具包中的工具,就需要导入import这个模块。
每一个以扩展名py结尾的Python源代码文件都是一个模块。
在模块中定义的全局变量、函数都是模块能够提供给外界直接使用的工具。
一、模块体验:
新建2个Python文件,第一个文件是模块文件,第二个是体验模块文件,在第二个文件中使用第一个文件,也就是使用import导入第一个模块文件。
步骤:
1、新建pyzxw_分隔线模块.py
l 复制之前打印多条分隔线的的代码内容,最后一行print代码除外
l 增加一个字符串变量
代码语言:python代码运行次数:0复制name = "Python自学网"
2、新建pyzxw_体验模块.py
编写以下代码:
代码语言:python代码运行次数:0复制import pyzxw_分隔线模块
pyzxw_分隔线模块.print_line(' ', 50)
print(pyzxw_分隔线模块.name)
具体文件内内容:
1、pyzxw_分隔线模块.py
代码:
代码语言:python代码运行次数:0复制def print_line(char, times):
print(char * times)
def print_lines(char, times):
""" 打印多行分隔线(这是对函数的说明)
:param char: 分隔线使用的分隔字符
:param times: 分隔线重复的次数
"""
row = 0
while row < 5:
print_line(char, times)
row = 1
name = "Python自学网"
图片:
2、pyzxw_体验模块.py
代码:
代码语言:python代码运行次数:0复制# 导入模块 inport 模块名
import pyzxw_分隔线模块
# 使用模块中函数
pyzxw_分隔线模块.print_line(' ', 50)
# 使用模块中全局变量
print(pyzxw_分隔线模块.name)
图片:
pyzxw_体验模块文件执行结果:
体验小结:
可以在一个Python文件中定义变量或者函数,
然后在另外一个文件中使用import导入这个模块,
导入之后,就可以使用 模块名.变量 或 模块名.函数 的方式,使用这个模块中定义的变量或者函数。
模块可以让曾经编写过的代码方便的被复用。
二、模块名也是一个标识符
模块名就是文件名,在Python中所有以py结尾的文件名就是一个模块。
1、标识符可以由字母、下划线和数字组成
2、不能以数字开头
3、不能与关键字重名
注意: 如果在给Python文件起名时,以数字开头是无法在PyCharm中通过import导入这个模块的
三、了解pyc文件
C: 是compiled编译过的意思
操作步骤:
1、浏览程序目录会发现一个_pycache_的目录
2、目录下会有一个pyzxw_分隔线模块.cpython-37.pyc文件,cpython-37表示python解释器的版本
3、这个pyc文件是由python解释器将模块的源码转换为字节码
- Python这样保存字节码是作为一种启动速度的优化
字节码:
Python在解释源程序时是分成两个步骤的
① 首先处理源代码,编译生成一个二进制字节码
② 再对字节码进行出处理,才会生成CPU能够识别的机器码
有了模块的字节码文件之后,下一次运行程序时,如果在上次保存字节码之后没有修改过源代码,python将会加载.pyc文件并跳过编译这个步骤
当Python重编译时,它会自动检查源文件和字节码文件的时间戳
如果你又修改了源代码,下次程序运行时,字节码将会重新自动创建
以上就是关于Python入门教程中的模块简单展开描述,有关模块以及模块的其他方式导入,后续会继续展开。