梦想SkyPython IDLE入门

news/2024/12/3 7:38:04/

IDLE是Python软件包自带的一个集成开发环境,初学者可以利用它方便地创建、运行、测试和调试Python程序。

一、IDLE的安装
实际上,IDLE是跟Python一起安装的,不过要确保安装时选中了“Tcl/Tk”组件,准确地说,应该是不要取消该组件,因为默认时该组件是处于选中状态的。
二、IDLE的启动
安装Python后,我们可以从“开始”菜单→“所有程序”→“Python 2.7”→“IDLE(Python GUI)”来启动IDLE。IDLE启动后的初始窗口下图所示:


 
如上图所示,启动IDLE后首先映入我们眼帘的它的Python shell,我们通过它可以在IDLE内部执行Python命令。除此之外,IDLE还带有一个编辑器,用来编辑Python程序(或者脚本);有一个交互式解释器用来解释执行Python语句;有一个调试器来调试Python脚本。下面我们从IDLE的编辑器开始介绍。

三、利用IDLE创建Python程序
IDLE为开发人员提供了许多有用的特性,如自动缩进、语法高亮显示、单词自动完成以及命令历史等等,在这些功能的帮助下,能够有效的提高我们的开发效率。下面我们通过一个实例来对这些特性分别加以介绍。我们的示例程序的源代码如下所示:

#提示用户进行输入
integer1 = raw_input('请输入一个整数:')
integer1 = int(integer1)
integer2 = raw_input('请再次输入一个整数:')
integer2 = int(integer2)
if integer1>integer2:
    print '%d > %d' %(integer1,integer2)
else:
    print '%d <= %d' %(integer1,integer2)


我们现在演示如何利用IDLE的编辑器来创建Python程序。要新建一个文件,首先从“File”菜单中选择“New Window”菜单项,这样就可以在出现的窗口中输入程序的代码了。现在就让我们输入上面的代码来亲自体验一下IDLE所提供的各种便利吧。

我们首先介绍自动缩进。实际上,很少有哪种语言能像Python这样重视缩进了,在其他语言比如C语言,缩进对于代码的编写来说是“有了更好”,而不是“没有不行”,它充其量是一个个人书写代码的风格问题;但是到了Python语言这里,则把缩进提升到了一个语法的高度。复合语句不是用大括号{}之类的符号表示,而是通过缩进来表示。这样做的好处就是减少了程序员的自由度,有利于统一风格,使得人们在阅读代码时会更加轻松。为此,IDLE提供了自动缩进功能,它能将光标定位到下一行的指定空距处。当我们键入与控制结构对应的关键,如if等,或者输入如def等与函数定义对应的关键字的时候,按下回车键后IDLE就会启动自动缩进功能。如下图所示:


当我们在if关键字所在行的冒号后面按回车键之后,IDLE自动进行了缩进。一般情况下,IDLE将代码缩进一级,即4个空格。如果想改变这个默认的缩进量的话,可以从“Format”菜单选择“New indent width”项来进行修改。对初学者来说,需要注意的是尽管自动缩进功能非常方便,但是我们不能完全依赖它,因为有时候自动缩进未必完全合我们的心意,所以还需要仔细检查一下。

所谓语法高亮显示,就是给代码不同的元素使用不同的颜色进行显示,关于这一点,我们从图3中已经看到了。默认时,关键字显示为桔红色,注释显示为红色,字符串为绿色,定义和解释器的输出显示为蓝色,控制台输出显示为棕色。在键入代码时,会自动应用这些颜色突出显示。语法高亮显示的好处是,可以更容易区分不同的语法元素,从而提高可读性;与此同时,语法高亮显示还降低了出错的可能性。比如,如果输入的变量名显示为桔红色,那么您就需要注意了,这说明该名称与预留的关键字冲突,所以必须给变量更换名称。

单词自动完成指的是,当用户输入单词的一部分后,从“Edit”菜单选择“Expand word”项,或者直接按Alt+/组合键自动完成该单词。

此外,有时候我们只记住了函数的开头几个字母,这时怎么办?比如我想在程序运行时用raw_input函数从标准输入设备键入一些内容,本来这个函数名我是记住了的,但由于肚子太饿输入raw这三个字母后,下面的几个字母却怎么也想不起来了,没关系,从“Edit”菜单选择“Show completetions”菜单项,IDLE就会给出一些提示。

现在只要按下回车键,IDLE就会自动完成此函数名。如果不合适的话,还可以向上、向下方向键进行查找。
创建好程序之后,从“File”菜单中选择“Save”保存程序。如果是新文件,会弹出“Save as”对话框,我们可以在该对话框中指定文件名和保存位置。保存后,文件名会自动显示在屏幕顶部的蓝色标题栏中。如果文件中存在尚未存盘的内容,标题栏的文件名前后会有星号出现。

四、常用编辑功能详解
现在我们将介绍编写Python程序时常用的IDLE选项,下面按照不同的菜单分别列出,供初学者参考。对于“Edit”菜单,除了上面介绍的几个选项之外,常用的选项及解释如下所示:

Undo:撤销上一次的修改

Redo:重复上一次的修改

Cut:将所选文本剪切至剪贴板

Copy:将所选文本复制到剪贴板

Paste:将剪贴板的文本粘帖到光标所在位置

Find:在窗口中查找单词或模式

Find in files:在指定的文件中查找单词或模式

Replace:替换单词或模式

Go to line:将光标定位到指定行首。

对于“Format”菜单,常用的选项及解释如下所示

Indent region:使所选内容右移一级,即增加缩进量

Dedent region:使所选内容组左移一级,即减少缩进量

Comment out region:将所选内容变成注释

Uncomment region:去除所选内容每行前面的注释符

New indent width:重新设定制表位缩进宽度,范围2~16,宽度为2相当于1个空格

Expand word:单词自动完成

Toggle tabs:打开或关闭制表位。


五、在IDLE中运行Python程序
要使用IDLE执行程序的话,可以从“Run”菜单中选择“Run Module”菜单项,该菜单项的功能是执行当前文件。对于我们的示例程序,执行情况如下图所示:



六、使用IDLE的调试器
软件开发过程中,总免不了这样或那样的错误,其中有语法方面的,也有逻辑方面的。对于语法错误,Python解释器能很容易的检测出来,这时它会停止程序的运行并给出错误提示。对于逻辑错误,解释器就鞭长莫及了,这时程序会一直执行下去,但是得到的运行结果却是错误的。所以,我们常常需要对程序进行调试。

最简单的调试方法是直接显示程序数据,例如可以在某些关键位置用print语句显示出变量的值,从而确定有没有出错。但是这个办法比较麻烦,因为开发人员必须在所有可疑的地方都插入打印语句。等到程序调试完后,还必须将这些打印语句全部清除,这真是太罗嗦了。

除此之外,我们还可以使用调试器来进行调试。利用调试器,我们可以分析被调试程序的数据,并监视程序的执行流程。调试器的功能包括暂停程序执行、检查和修改变量、调用方法而不更改程序代码等等。IDLE也提供了一个调试器,帮助开发人员来查找逻辑错误。

下面简单介绍IDLE的调试器的使用方法。在“Python Shell”窗口中单击“Debug”菜单中的“Debugger”菜单项,就可以启动IDLE的交互式调试器。这时,IDLE会打开“Debug Control”窗口,并在“Python Shell”窗口中输出“[DEBUG ON]”并后跟一个“>>>”提示符。这样,我们就能像平时那样使用这个“Python Shell”窗口了,只不过现在输入的任何命令都是允许在调试器下。我们可以在“Debug Control”窗口查看局部变量和全局变量等有关内容。如果要退出调试器的话,可以再次单击“Debug”菜单中的“Debugger”菜单项,IDLE会关闭“Debug Control”窗口,并在“Python Shell”窗口中输出“[DEBUG OFF]”。

七、IDLE的命令历史功能
命令历史可以记录会话期间在命令行中执行过的所有命令。在提示符下,可以按Alt+P组合键找回这些命令,每按一次,IDLE就会从最近的命令开始检索命令历史,按命令使用的顺序逐个显示。按Alt+N组合键,则可以反方向遍历各个命令,即从最初的命令开始遍历。

八、小结
IDLE是Python软件包自带的一个集成开发环境,非常适合于Python编程的初学者。本文通过一个示例程序详细介绍了IDLE在程序开发过程中的使用方法,希望能对大家学习Python编程有所帮助


http://www.ppmy.cn/news/6677.html

相关文章

车牌检测模型训练(含源码和数据集)

车牌检测模型训练(含源码和数据集) 本教程利用NVIDIA TAO进行车牌检测模型的训练: 模型框架:SSD数据集: CRPD, 连接:https://github.com/yxgong0/CRPD训练框架: NVIDIA TAO, 安装教程连接: https://docs.nvidia.com/tao/tao-toolkit/text/tao_toolkit_quick_start_guide.html…

C#语言实例源码系列-实现FTP下载文件

专栏分享点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册 &#x1f449;关于作者 众所周知&#xff0c;人生是一个漫长的流程&#xff0c;不断克服困难&#xff0c;不断反思前进的过程。在这个过程中…

【类和对象(上)】

Quitters never win and winners never quit. 目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1 访问限定符 4.2 封装 5.类的作用域 6.类的实例化 7.类对象模型 7.1 如何计算类对象的大小 7.2 结构体内存对齐规则 8.this指针 …

后端思维篇:如何抽个上报模板

前言 大家好&#xff0c;我是田螺。 我的后端思维专栏好久没更新啦&#xff0c;本文是后端思维专栏的第六篇哈。我的整个后端思维专栏都是跟日常工作相关的哈。 最近刚好优化了安全上报这块的代码&#xff0c;抽了一个基础模板&#xff0c;看起来挺优雅的。所以今天手把手教…

[Jule CTF 2022] 部分WP

这个比赛参加的人极少&#xff0c;比赛有一星期那么长&#xff0c;快结束的时候来了个大牛&#xff0c;一下上到12000&#xff0c;我这6K只能排到第二了。不过题还是挺不错的。只是入口不是人链接&#xff0c;得自己输才能进&#xff0c;可能很多人因为这个没参加。 Crypto E…

spring事物使用示例及原理总结

目录 事务示例 示例一 示例二 示例三 示例四 示例五 示例六 事务原理 EnableTransactionManagement 执行代理对象目标方法 事务示例 示例一 在test()方法直接调用abc()方法&#xff0c;并在test()方法添加Transactional&#xff0c;test()和abc()方法分别会更新id…

《计算机软件基础》实验一

实验一&#xff1a;线性表&#xff0f;栈与队 一、实验目的 了解实现线性表&#xff0f;栈与队&#xff0f;数组所涉及到的数据结构。 二、实验要求 因受时间限制&#xff0c;从以下给出的4个实验内容中任选3个&#xff0c;分析并补齐给出的源程序&#xff0c;运行相应的程…

20221226今天的世界发生了什么

///南山控股&#xff1a;控股子公司拟设合伙企业投资仓储物流领域 合伙企业专注于仓储物流领域&#xff0c;主要对重要城市区域的仓储物流类的商业不动产进行投资。目前计划投资南京、嘉兴、昆明等地的仓储物流类项目 ///岭南股份&#xff1a;子公司与腾讯授权集成商盛灿科技签…