《树莓派Python编程指南》——3.7 使用模块获得附加特性

简介:

本节书摘来自华章计算机《树莓派Python编程指南》一书中的第3章,第3.7节,作者:(美) Alex Bradbury Ben Everard更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.7 使用模块获得附加特性

到目前为止,你已经见过import很多次了,但我们并没有解释它们究竟做些了什么。事实上,非常简单,import只是将Python代码从另外一个文件中转移到当前程序中。如果你创建一个名为module_example.py的文件,并写入下面这行:


<br"https://yqfile.alicdn.com/bb0434e3017edf295f99b6c75aa533f85a84ee8a.png
" >

将其保存在你的home目录(对于默认用户就是/home/pi)。现在,在IDLE3的Python解释器中输入:


<a href=https://yqfile.alicdn.com/7484e9680d0e9de5b1d2752a73b066b31f79e06c.png
" >

当然,这是个毫无意义的模块。通常模块中包括可以使用的函数或对象。把module_example改成:


a9907a7ea7c1b0b0faf6422f3e79fc83a280c1ad

你必须重启IDLE才能重新使用新代码。重启之后运行:


<a href=https://yqfile.alicdn.com/83acb46bea99384c1a794defbc84befa1894a52d.png
" >

第一行将module_example的所有函数和类导入你的工程中,在函数或类名前加上模块名作为前缀就可以使用它们了。有时,你只需要模块中的一部分,那么可以只导入其中的一部分:
module_example改成:


<a href=https://yqfile.alicdn.com/8486d2f366f016a2a2802cf1d64b7bc6fa223909.png
" >

现在,只要输入下面这行就可以运行该函数:
module_example改成:

26e2f741eae0f10024abb64f104655f97b250523

注意,这里不需要加模块名前缀。因为我们已经将其导入当前名字空间。这样做的时候需要确保它和自己定义的其他函数或类没有冲突。为了方便使用,你也可以将某个模块的所有东西都导入当前名字空间:
module_example改成:

<a href=https://yqfile.alicdn.com/515fec3a738dbe8d73c9c7a0507721540fd5247e.png" >

这样做需要非常小心,以避免名字空间冲突。
使用模块而不是将所有东西放入一个文件有很多优点。它使得代码可以在不同工程间复用(关于代码复用,还记得我们是怎么说的么?)。它还可以避免将大工程保存在单个文件中带来的不便。你可以将不同的模块分给不同的组,方便团队一起工作。
后继章节中,我们将围绕几个特别的模块,为你的树莓派工程增加许多足够酷的特性。
相关文章
|
6天前
|
Python
在Python中,可以使用内置的`re`模块来处理正则表达式
在Python中,可以使用内置的`re`模块来处理正则表达式
19 5
|
16天前
|
Java 程序员 开发者
Python的gc模块
Python的gc模块
|
19天前
|
数据采集 Web App开发 JavaScript
python-selenium模块详解!!!
Selenium 是一个强大的自动化测试工具,支持 Python 调用浏览器进行网页抓取。本文介绍了 Selenium 的安装、基本使用、元素定位、高级操作等内容。主要内容包括:发送请求、加载网页、元素定位、处理 Cookie、无头浏览器设置、页面等待、窗口和 iframe 切换等。通过示例代码帮助读者快速掌握 Selenium 的核心功能。
62 5
|
23天前
|
Python
SciPy 教程 之 SciPy 模块列表 6
SciPy教程之常量模块介绍:涵盖公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率及力学单位。示例展示了角度单位转换为弧度的几个常用常量。
18 7
|
23天前
|
Python
SciPy 教程 之 SciPy 模块列表 7
`scipy.constants` 模块提供了常用的时间单位转换为秒数的功能。例如,`constants.hour` 返回 3600.0 秒,表示一小时的秒数。其他常用时间单位包括分钟、天、周、年和儒略年。
17 6
|
20天前
|
Python
SciPy 教程 之 SciPy 模块列表 13
SciPy教程之SciPy模块列表13:单位类型。常量模块包含多种单位,如公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例代码展示了如何使用`constants`模块获取零摄氏度对应的开尔文值(273.15)和华氏度与摄氏度的转换系数(0.5556)。
17 1
|
21天前
|
XML 前端开发 数据格式
超级详细的python中bs4模块详解
Beautiful Soup 是一个用于从网页中抓取数据的 Python 库,提供了简单易用的函数来处理导航、搜索和修改分析树。支持多种解析器,如 Python 标准库中的 HTML 解析器和更强大的 lxml 解析器。通过简单的代码即可实现复杂的数据抓取任务。本文介绍了 Beautiful Soup 的安装、基本使用、对象类型、文档树遍历和搜索方法,以及 CSS 选择器的使用。
52 1
|
22天前
|
Python
SciPy 教程 之 SciPy 模块列表 9
SciPy教程之常量模块介绍,涵盖多种单位类型,如公制、质量、角度、时间、长度、压强等。示例展示了如何使用`scipy.constants`模块查询不同压强单位对应的帕斯卡值,包括atm、bar、torr、mmHg和psi。
13 1
|
22天前
|
Python
SciPy 教程 之 SciPy 模块列表 8
SciPy教程之常量模块单位类型介绍。该模块包含多种单位,如公制、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例展示了部分长度单位的转换值,例如英寸、英尺、海里等。
14 1
|
24天前
|
知识图谱 Python
SciPy 教程 之 SciPy 模块列表 5
本教程介绍SciPy常量模块中的单位类型,涵盖公制、质量、时间、长度等单位。示例代码展示了如何使用`scipy.constants`模块获取不同质量单位的千克值,如公吨、磅、盎司、原子质量单位等。
15 1