《树莓派Python编程入门与实战(第2版)》——3.6 关于Python开发环境shell

简介:

本节书摘来自异步社区《树莓派Python编程入门与实战(第2版)》一书中的第3章,第3.6节,作者[美] Richard Blum Christine Bresnahan,陈晓明 马立新 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

3.6 关于Python开发环境shell

开发环境shell是用户创建、运行、测试和修改Python脚本的工具。通常开发环境会改变代码关键语法的颜色,以便更容易识别各种语句。这种颜色标注,有利于脚本的测试、修改以及调试。另一个不错的功能是代码自动完成,当输入Python关键字时,开发环境会提供一些屏幕提示来帮助你完成代码。

除此之外,开发环境还提供语法检查,因此你可以在不运行整个Python脚本的情况下就检查出语法错误。通常,开发环境工具还提供了自动缩进来保持整个脚本的缩进一致。

最后,环境中调试工具提供了单步功能帮助你解决Python脚本中的逻辑错误。那么开发环境不能做什么?它不能替你写一个Python脚本,但是它能帮助你完成这件事。

IDLE是默认安装在Raspbian上的Python开发环境,并且它也是本书主要使用的环境。还有很多其他的Python开发环境工具,包括下面这些。

PyCharm—www.jetbrains.com/pycharm/

Komodo IDE—www.activestate.com/komodo-ide/

PyDev Open Source Python plug-in for Eclipse—pydev.org

你可以通过wiki.python.org/moin/IntegratedDevelopmentEnvironments找到关于集成开发环境(Integrated Development Environment,IDE)的更多介绍。

IDLE开发环境shell

IDLE表示交互式开发环境。这个开发环境提供了一个内建的文本编辑器、一个交互式shell以及很多其他的特性,来帮助创建和测试Python脚本。

要在GUI中启动IDLE,只需双击桌面上的Python 3图标。你也可以从程序菜单中找到它。图3.5显示了支持Python 3的IDLE Python交互模式(Shell)。


f5b018dfe9c9625482db1513850d59fc53ca20fc

TIP 提示:把IDLE添加到桌面

由于你将要在本书中大量使用IDLE,应该为其在桌面上添加一个快捷图标。找到位于树莓派的Programming菜单下的Python 3图标,并且用鼠标右键单击它。从下拉菜单中选择Add to Desktop。

IDLE窗口的标题栏显示Python Shell。注意这个窗口使用跟Python交互式shell使用同样的提示。因为IDLE环境在这种开发模式下使用Python交互式shell,所以我们称之为交互式模式。

NOTE 技巧:IDLE无处不在

使用IDLE最大的优点是它不仅能在Linux中使用,也可以在Windows和OS X上使用。

交互式模式有很多特性帮助你创建和测试Python脚本。下面是一些当你开始Python编程时最重要的特性:

菜单驱动的选项以及它们对应的快捷键——例如,要打开一个新的IDLE窗口,可以单击File菜单项然后从下拉菜单中选择New Window。也可以使用快捷键打开一个新的IDLE窗口,按下Ctrl+N组合键即可。

基本的文本编辑器——为了输入一个Python脚本,可以从交互式IDLE主窗口打开一个新的窗口,以使用基本的文本编辑器。这个文本编辑器允许通过菜单或者快捷键完成诸如剪切和粘贴文本的一些操作。

代码自动完成——当你输入Python语句时,一些有帮助的提示会出现在屏幕上,帮助你完成当前的语句。

语法检查——当你输入一条命令并且回车后,Python解释器会检查语句是否有语法错误并且立即提示问题。这比在完成整个脚本之后再找语法错误好多了。

代码颜色高亮——IDLE程序通过改变代码颜色帮助你了解Python语句的逻辑。

表3.1显示了它使用的颜色。


f19fd743f31e372343bc06e8099a4659a0346317

缩进支持——Python在某些地方要求使用格式化的缩进。IDLE程序会重新组织这些必须的缩进并自动修正(更多关于缩进的信息,参见本书第6章)。

调试特性——调试是指从一个程序中去除不正确的语法或逻辑。在IDLE中,Python解释器的语法检查会找出语法错误。你可以使用IDLE调试器来发现逻辑错误,它允许你单步调试脚本而不用添加更多的Python语句来调试。

帮助——任何人都会需要帮助,IDLE提供了一个非常好的帮助功能。你可以通过单击Help菜单项然后从下拉菜单中选择IDLE Help来使用帮助功能。

自己尝试一下IDLE的特性会帮助你更好地学习使用IDLE工具。下面的“实践练习”就提供了这样的机会。

实践练习

探索Python IDLE工具

在下面的步骤中,你将会尝试一些IDLE工具的特性。不要被这个工具中花哨的功能搞得眼花缭乱。请按照下面的步骤来尝试基本功能并了解一下这个环境。

1.如果树莓派没有启动的话,就启动它并登录系统。

2.如果启动后没有自动进入GUI,就输入startx并按下回车键。

3.双击添加到桌面上的Python 3快捷图标打开IDLE程序,或者通过Raspberry菜单图标,将鼠标悬停在Programming菜单项上,并单击Python 3菜单项。现在你应该打开了IDLE交互式模式窗口。

TIP 提示: Python 3不是Python 2

你也许已经注意到了Python 3菜单选项旁边有一个漂亮的Python 2图标。这是为Python 2准备的IDLE程序。确保选择Python 3以继续本章的课程。

4.在IDLE 窗口上,在>>>提示符后,输入print后停下来看看屏幕。你应该注意到print命令变成了紫色。这是因为print语句被认为是Python内建的函数(在后续的章节,我们将学习各种内建函数)。这些颜色是为了让你更好地认识 Python 语句的语法并理清脚本的逻辑。可以参考表3.1的各种IDLE颜色的含义。

5.按空格键然后输入“This is my first Python”,再停下来看看屏幕。你应该注意到文本This is my first Python被标记成绿色,因为Python认为它是字符串(我们会在后续的章节学习到更多关于字符串的知识。现在,只需注意其颜色就好了)。

6.不要正确完成你的Python语句,直接按下回车键就好了。(这里故意试图产生一个语法错误,以看看IDLE如何处理语法问题)。应该能看到这条消息:Syntax Error: EOL error while scanning string literal,这是因为你没有正确结束print函数。

7.在IDLE 3窗口,输入print(然后停止。你会看到窗口上出现一个屏幕提示,如图3.6所示。IDLE尝试通过给出屏幕提示给予指导。


5b65057d0139663c8eac278019db4f250dfa115a

8.输入“This is my first Python statement in IDLE”以完成这条Python语句。看看你的Python语句,并确保它是这样的:print (“This is my first Python statement in IDLE”)。如果它不正确,那么,你可以用左、右箭头键和Delete键进行修改。当你确定它是正确的时候,按下回车键。应该看到如图3.7所示的输出。恭喜!你刚刚在IDLE里正确输入了自己的第一条Python语句。

9.最后,按Ctrl+Q组合键以退出IDLEshell。IDLE交互式窗口应该关闭了。


d9e2f3d776a312e24ffc9274cfd259c7654d49a6

NOTE 技巧:退出IDLE

可以使用各种不同的方法退出IDLE。就像在第9步中一样,可以按Ctrl+Q组合键退出。同样,也可以使用菜单选项:单击File菜单,然后选择Exit。

第三种方法是输入Python语句exit()。当你这么做的时候,会有一个窗口弹出来,它的标题是Kill?,并且会显示The program is still running! Do you want to kill It?然后你可以单击OK按钮。最后一种方法相对比较暴力,但是它可以退出IDLE并回到GUI。

现在你已经试用了IDLE,它的基本功能对你应该更有用。随着Python的使用经验的增长,你可能会想尝试一些更强大的功能。

TIP 提示:更多地了解IDLE

Python官方网站维护了一份关于IDLE的使用的文档,非常值得去看看。你可以在这里docs.python.org/3/library/idle.html找到它。

相关文章
|
5天前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
22 1
|
2天前
|
Python
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
|
2天前
|
存储 索引 Python
Python从入门到精通——1.3.1练习编写简单程序
Python从入门到精通——1.3.1练习编写简单程序
|
2天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
2天前
|
数据采集 数据可视化 数据处理
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
|
2天前
|
Java 数据库连接 数据处理
Python从入门到精通:3.1.2多线程与多进程编程
Python从入门到精通:3.1.2多线程与多进程编程
|
2天前
|
存储 网络协议 关系型数据库
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
|
2天前
|
人工智能 Python
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
7 0
|
5天前
|
SQL 中间件 API
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】**Flask是Python的轻量级Web框架,以其简洁API和强大扩展性受欢迎。本文深入探讨了面试中关于Flask的常见问题,包括路由、Jinja2模板、数据库操作、中间件和错误处理。同时,提到了易错点,如路由冲突、模板安全、SQL注入,以及请求上下文管理。通过实例代码展示了如何创建和管理数据库、使用表单以及处理请求。掌握这些知识将有助于在面试中展现Flask技能。**
12 1
Flask框架在Python面试中的应用与实战
|
6天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
26 6