python模块化编程_什么是模块,Python模块化编程(入门必读)
Python 提供了强大的模块支持,主要体现在,不仅 Python 标准库中包含了大量的模块(称为标准模块),还有大量的第三方模块,开发者自己也可以开发自定义模块。通过这些强大的模块可以极大地提高开发者的开发效率。
那么,模块到底指的是什么呢?模块,英文为 Modules,至于模块到底是什么,可以用一句话总结:模块就是 Python程序。换句话说,任何 Python 程序都可以作为模块,包括在前面章节中写的所有 Python 程序,都可以作为模块。
模块可以比作一盒积木,通过它可以拼出多种主题的玩具,这与前面介绍的函数不同,一个函数仅相当于一块积木,而一个模块(.py 文件)中可以包含多个函数,也就是很多积木。模块和函数的关系如图 1 所示。
图 1 模块和函数的关系
经过前面的学习,读者已经能够将 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模块化编程_什么是模块,Python模块化编程(入门必读)相关推荐
- 查看Python的版本_查看当前安装Python的版本
一.查看Python的版本_查看当前安装Python的版本 具体方法: 首先按[win+r]组合键打开运行: 然后输入cmd,点击[确定]: 最后执行[python --version]命令即可. 特 ...
- python小海龟画房子编程_教孩子学Python编程之海龟画图(一)
大家好,我是践行计算机教育刘老师,很高兴跟大家分享Python编程,建议5年级以上的学生学习.父母也可以陪着孩子一起学习Python编程,对于孩子学编程起到监督和辅助学习.下载我们Python编程工具 ...
- python 仪表驱动_技术文章 | 锐视模块化仪器python驱动使用说明
原标题:技术文章 | 锐视模块化仪器python驱动使用说明 简仪的硬件驱动都是使用C#用统一接口包装的,所有的MACOs都是开放型的,有明确的方法(Methods)和属性(Properties)定义 ...
- python api讲解_集合api讲解_Python C编程视频课程_Python视频-51CTO学院
我们为什么要学习Python C编程? 第一个原因,用Python进行项目开发时,很多时候都需要用Python C来扩展Python模块,优化Python脚本的执行效率. 第二个原因,很多项目用C/C ...
- 趣学python教孩子学编程_《趣学Python——教孩子学编程》学习笔记第1-3章
第1章 Python不是大蟒蛇 1.1 关于计算机语言 计算机程序是一组让计算机执行某种动作的指令.软件就是计算机程序的集合. 一种编程语言就是一种特定的与计算机交谈的方式,这种方式使用计算机和人都能 ...
- 编程猫python笔试题_假如高考考python编程,这些题目你会几个呢?
Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理 ...
- 学python还是不会编程_你真的不学Python吗?学习Python的四大理由!
在众多人的脑海中,Python无非就是一门编程语言而已,并没有什么特色,但是提及学习编程大部分人都会推荐Python,为什么?今天就给你说说学习Python的四大理由吧. 首先先来了解一下什么是Pyt ...
- arcgis工具python源码_面向Arcgis的python脚本编程_数据
[实例简介] <面向ArcGIS的Python脚本编程>是一本指导ArcGIS for Desktop专业用户进行Python开发的指南.该书将教会您如何通过编写Python代码处理空间数 ...
- python儿童命令_《与孩子一起学编程》第一章出发吧之指令学习、与Python交互|中国少儿编程网...
1.3来点指令吧 下面就来向Python下达我们的第一条指令. 在>>>提示符末尾的光标后面键入:print "hello world!" 然后按下Enter(回 ...
最新文章
- canvas绘制弯月
- php连接mysql数据并查询
- 给一个整数数组,找到两个数使得他们的和等于一个给定的数 target。
- Pixysoft.Framework.MemoryCache 开发实录
- math.fabs_带有Python示例的math.fabs()方法
- 在安卓模拟器中,adb安装apk常见错误
- 9个元素换6次达到排序序列_排序总结:二大种,六小种排序方式
- asterisk概述和代码分析
- jconsole 里的线程编号一直在增加_第三章_运行时数据区概述及线程
- javascript 原生事件综合查询
- 高薪Java开发工程师需要掌握哪些技能?
- Oracle_PL/SQL(3) 游标
- IDEA maven库里 添加自定义jar包
- ansys18安装教程_ANSYS|ansys18.0完整安装过程及常见问题解决方案「图文」
- java excel转pdf有乱码_word,ppt,txt,excel转换pdf 解决中文乱码
- [科研自学神器]中国大学MOOC下载器
- 【项目管理】项目启动阶段 -- 制定项目章程
- 8个接私活的网站,只要你有码,那就有钱!
- vue之ele中的table组件(复选框的回显和重置)
- STM32--DSP库使用(1)
热门文章
- Java语言基础1-关键字、标识符、常量和变量
- Android native进程间通信实例-binder篇之——解决实际问题inputreader内建类清楚缓存...
- Python学习笔记14(socket编程)
- Android应用程序文件缓存getCacheDir()和getExternalCacheDir()
- 创建线程的两种方式:继承Thread类和实现Runnable接口
- 设计模式-缺省适配类.
- Eclipse 安装插件
- 【Vegas原创】imp/exp导入导出数据
- Vue生命周期通俗理解
- 电脑备忘录软件测试自学,软件测试经验和教训分享.pdf