【Python】模块

  • 🚩 WRITE IN FRONT 🚩

  • 🔎 介绍:"謓泽"正在路上朝着"攻城狮"方向"前进四" 🔎

  • 🏅 荣誉:2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2222年获评百大博主、华为云享专家、阿里云专家博主、掘金优秀创作者、全网粉丝量7w+、个人社区人数累计4w+、全网访问量100w+ 🏅

  • 🆔 本文章内容由 謓泽 原创 如需相关转载请提前告知博主 ⚠

  • 📑 创作时间:2022 年 2 月 13 日 📅

  • 📝 个人主页:謓泽的博客 📃

  • 📣 专栏系列:【电子】系列_謓泽的博客📃

  • 🙌 Gitee:謓泽 (wsxsx) - Gitee.com ⭐️

  • 🎁 点赞👍+ 收藏⭐️+ 留言📝

  • ✉️ 我们并非登上我们所选择的舞台,演出并非我们所选择的剧本 📩

模块

模块是Python当中一个非常重要的知识点,给予了Python非常好的支持。Python当中有非常多功能强大的模块。主要不止于体现在了Python当中的标准库当中拥有许多好用且强大的模块,并且还是具有第三方模块的库当中的模块。同时自己也可以自定义一些模块,通过这些模块给予了写代码当中的人一个很大的帮助。

🍊模块是Python当中在程序架构的一个核心概念🍊

  • 🍅模块就好比是一个工具包,当我们要想去使用这个工具包就必须要导入进import 这个模块。
  • 🍅模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。
  • 🍅在模块当中定义的函数或者是全局变量都是模块可以直接提供给外界的使用工具。

模块示意图

上述就是模块当中我假设举出的一个示例图。

我们可以把书📕盒当中是模块,而物理📕、英语📕、数学📕、语文📕,当作是我们要实现的一个功能,每一个📕对于着不同的功能,最终把这些功能汇聚到模块当中去。

张三同学不知道这样你理解了没有(✿◕‿◕✿)


第一个模块

开始我们接触的第一个Python的模块吧(@^0^)

我们先创建两个模块.py的文件。

  • 第一个模块当中实现两个数的相加,再创建name = '謓泽'。
  • 第二个模块当中实现打印出CSDN謓泽并使用模块①当中相加的功能。

代码示例如下↓

  • zz_第一个模块↓
python 复制代码
def add(a,b):
    return a + b

x = int(input('请输入数字①:'))
y = int(input('请输入数字②:'))
ret = add(x,y)
print("%d + %d = %d" % (x,y,ret))

name = 'CSDN謓泽'
  • zz_第二个模块↓
python 复制代码
# 导入模块
import zz_第一个模块
print(zz_第一个模块.name)

那么我们可以从第二个模块当中来看看第二个运行结果如下↓

请输入数字①:5
请输入数字②:5
5 + 5 = 10
CSDN謓泽

程序运行成功,那么当我们要去使用模块直接可以使用import给它导入模块即可。


标识符

我们需要注意在命名标识符的时候它也是一个需要遵守标识符严格规定的如下↓

  • 标识符,规则:字母、数字、下划线,不以数字开头,关键字不能作为标识符。
  • 注意:如果在给 Pycharm 的文件进行文件命名的话,以数字开头的话是无法 Pycharm 当中导入这个模块的。

Pyc文件

在这里Py是Python的缩写。

c是compiled(编译过)的缩写。

那么我们怎么找到我们的这个.pyc的文件呢。实际上很容易步骤如下↓

  • 首先浏览到程序文件会发现一个__pycache__的文件。
  • 打开此文件就会拥有一个 xxx.pyc 的文件,cpython-39 表示解释器的版本。
  • 这个 pyc 的文件是由 Python 解释器将模块的源码转换成字节码。

Python 这样保存的字节码是作为一种速度上的优化。

字节码

Pyrhon在解释器程序的时候是分为两个步骤的。

①:首先处理源代码,编译生成一个二进制字节码。

②:再对字节码进行处理,才会生成CPU能够识别的机器码。

注意:有了模块的字节码之后,下次再运行程序的时候,如果在上次保存的字节码之后,没有修改过源代码的话,Python就会加载.pyc文件并且会跳过编译的这个步骤。

  • 当Python重新编译的时候,它就会自动检查源文件和字节码的时间戳。
  • 如果你又修改了源代码,下次程序运行的时候,自己吗将会重新的自动创建。
相关推荐
海阔天空_20135 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
天下皆白_唯我独黑12 分钟前
php 使用qrcode制作二维码图片
开发语言·php
零意@13 分钟前
ubuntu切换不同版本的python
windows·python·ubuntu
夜雨翦春韭16 分钟前
Java中的动态代理
java·开发语言·aop·动态代理
小远yyds18 分钟前
前端Web用户 token 持久化
开发语言·前端·javascript·vue.js
思忖小下24 分钟前
Python基础学习_01
python
何曾参静谧30 分钟前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
q567315231 小时前
在 Bash 中获取 Python 模块变量列
开发语言·python·bash
是萝卜干呀1 小时前
Backend - Python 爬取网页数据并保存在Excel文件中
python·excel·table·xlwt·爬取网页数据
代码欢乐豆1 小时前
数据采集之selenium模拟登录
python·selenium·测试工具