Python 提供了强大的模块支持,主要体现在,不仅 Python 标准库中包含了大量的模块(称为标准模块),还有大量的第三方模块,开发者自己也可以开发自定义模块。通过这些强大的模块可以极大地提高开发者的开发效率。

那么,模块到底指的是什么呢?模块,英文为 Modules,至于模块到底是什么,可以用一句话总结:模块就是 Python 程序。换句话说,任何 Python 程序都可以作为模块。

模块可以比作一盒积木,通过它可以拼出多种主题的玩具,这与前面介绍的函数不同,一个函数仅相当于一块积木,而一个模块(.py 文件)中可以包含多个函数,也就是很多积木。模块和函数的关系如图所示。

经过前面的学习,读者已经能够将 Python 代码写到一个文件中,但随着程序功能的复杂,程序体积会不断变大,为了便于维护,通常会将其分为多个文件(模块),这样不仅可以提高代码的可维护性,还可以提高代码的可重用性。

代码的可重用性体现在,当编写好一个模块后,只要编程过程中需要用到该模块中的某个功能(由变量、函数、类实现),无需做重复性的编写工作,直接在程序中导入该模块即可使用该功能。

前面讲了封装,并且还介绍了很多具有封装特性的结构,比如说:

  • 诸多容器,例如列表、元组、字符串、字典等,它们都是对数据的封装;
  • 函数是对 Python 代码的封装;
  • 类是对方法和属性的封装,也可以说是对函数和数据的封装。

这里所介绍的模块,可以理解为是对代码更高级的封装,即把能够实现某一特定功能的代码编写在同一个 .py 文件中,并将其作为一个独立的模块,这样既可以方便其它程序或脚本导入并使用,同时还能有效避免函数名和变量名发生冲突。

举个简单的例子,在某一目录下(桌面也可以)创建一个名为 hello.py 文件,其包含的代码如下:

def say ():print("Hello,World!")

在同一目录下,再创建一个 say.py 文件,其包含的代码如下:

#通过 import 关键字,将 hello.py 模块引入此文件
import hello
hello.say()

运行 say.py 文件,其输出结果为:

Hello,World!

大家可能注意到,say.py 文件中使用了原本在 hello.py 文件中才有的 say() 函数,相对于 day.py 来说,hello.py 就是一个自定义的模块,我们只需要将 hellp.py 模块导入到 say.py 文件中,就可以直接在 say.py 文件中使用模块中的资源。

与此同时,当调用模块中的 say() 函数时,使用的语法格式为“模块名.函数”,这是因为,相对于 say.py 文件,hello.py 文件中的代码自成一个命名空间,因此在调用其他模块中的函数时,需要明确指明函数的出处,否则 Python 解释器将会报错。

Python教程,8天python从入门到精通,学python看这套就够了

什么是模块,Python模块化编程(入门必读)相关推荐

  1. Python快速编程入门#学习笔记01# |第一章 :Python基础知识 (Python发展历程、常见的开发工具、import模块导入)

    全文目录 ==先导知识== 1 认识Python 1.1.1 Python的发展历程 1.1.2 Python语言的特点 2. Python解释器的安装与Python程序运行 1.2.1 安装Pyth ...

  2. Python快速编程入门课后习题答案

    文章目录 前言 第一章 一.填空题 二.判断题 三.选择题 四.简答题 第二章 一.填空题 二.判断题 三.选择题 四.简答题 第三章 一.填空题 二.判断题 三.选择题 四.简答题 第四章 一.单选 ...

  3. python与人工智能编程-总算明白python人工智能编程入门案例

    Python是非常简洁的一种脚本语言,写同样的程序,代码量仅为java的三分一,除了性能没有Java强之外,它的优点还是相当多的.以下是小编为你整理的python人工智能编程入门案例 下载Active ...

  4. python快速编程入门教程-终于懂得python快速编程入门教程

    为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...

  5. python游戏编程入门-python游戏编程入门

    <Python游戏编程入门> 这些文章负责整理在这本书中的知识点.注意事项和课后习题的尝试实现. 并且对每一个章节给出的最终实例进行分析和注释. 初识pygame:pie游戏 pygame ...

  6. python游戏编程入门 免费-python游戏编程入门 python游戏编程入门课

    python游戏编程入门 python游戏编程入门课 什么是python游戏编程入门?首先我们需要认识什么是Python Python既是一个软件工具包,也是一种语言.Python软件包包含了一个名为 ...

  7. python交互式编程入门先学什么_为什么 Python 对于编程入门学习来说,是一门很棒的语言...

    在这篇文章里,我会来阐述下为什么我觉得 Python 对于计算机编程入门教学来说是一门很棒的编程语言(对基础编程课程更多观点可以查看这篇文章).这也是从我针对初学者Python 编程教学过程中获得并总 ...

  8. [转载] Python快速编程入门课后程序题答案

    参考链接: Python程序添加两个矩阵 前言 本文只是简单的整理了一下课后习题的编程题,具体的填空.选择.判断可以见:Python快速编程入门课后习题答案 第一章 1.编写一个Python程序,输出 ...

  9. python交互式编程在哪里_终于明了python交互式编程入门

    Python是一款功能强大的脚本语言,具有丰富和强大的库,重要的是,它还具有很强的可读性,易用易学,非常适合编程初学者入门.以下是小编为你整理的python交互式编程入门 环境配置:下载Python并 ...

  10. 黑马程序员 python快速编程入门课后答案_Python快速编程入门课后程序题答案

    前言 本文只是简单的整理了一下课后习题的编程题,具体的填空.选择.判断可以见:Python快速编程入门课后习题答案 第一章 1.编写一个Python程序,输出如下图效果. ++++++++++ +  ...

最新文章

  1. 联想r720内存频率_联想 IdeaPad14s 2020 轻薄本双十一促销
  2. Matlab函数解释:colormap
  3. 通讯故障_掌握PLC必备知识,人机界面和 PLC 出现通讯故障如何分析解决
  4. DFS应用——寻找欧拉回路
  5. 对象必须实现 iconvertible。_精雕基础教程:对象的显示颜色
  6. 爱奇艺体育:体验Serverless极致扩缩容,资源利用率提升40%
  7. 用Golang构建gRPC服务
  8. 屏幕演示讲解必备工具:虚拟教棒、屏幕画笔、ZoomIt放大屏幕、鼠标探照灯(图)
  9. html页面右下角添加js广告,javascript实现右下角广告框效果
  10. 共享计算机如何建快捷方式,创建快捷方式的几种方法
  11. 视频文件常见格式-MP4
  12. dub怎么生成这么大的垃圾呢.
  13. 无人机行业的机遇与挑战
  14. 【侯捷】C++ STL
  15. 关于考教师资格证的一些建议——笔试篇
  16. openlayers 仿CAD(1)
  17. java模拟微博登录_Python模拟微博登陆,亲测有效
  18. 互联网风雨十年,我所经历的技术变迁
  19. NSSCTF web题记录
  20. 在新版本WHM (64.0)中安装php5.3

热门文章

  1. 新版本发布,新增监控插件与驱动
  2. IE10下阿里旺旺无法快速登录解决办法
  3. 记录bug:security+redis序列化失败no way to handle typed deser with setterless yet
  4. EPON与APON的区别 10G EPON如何与1G EPON兼容?
  5. 声学模型学习笔记(一) HMM
  6. 输出教学日历表c语言的思路,20182019学年第二学期教学日历及教学环节表(一).pdf...
  7. Alibaba Java 开发手册 1.5.0 华山版
  8. 讯飞智慧交通的实践之路
  9. 群晖NAS同步阿里云盘最新方法2023-04
  10. java metrics.counter_技术专栏 | 深入理解Metrics(二):Counters