Python模块(使用模块中的函数、变量、了解pyc文件)

2022-05-23 15:13:10 浏览数 (4)

模块是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入门教程中的模块简单展开描述,有关模块以及模块的其他方式导入,后续会继续展开。

1 人点赞