Python IDLE入门简介


Posted in Python onDecember 08, 2017

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

参考:

一、IDLE的安装

实际上,IDLE是跟Python一起安装的,不过要确保安装时选中了“Tcl/Tk”组件,准确地说,应该是不要取消该组件,因为默认时该组件是处于选中状态的。

二、IDLE的启动

安装Python后,我们可以从“开始”菜单→“所有程序”→“Python2.7”→“IDLE(PythonGUI)”来启动IDLE。IDLE启动后的初始窗口下图所示:

Python IDLE入门简介

如上图所示,启动IDLE后首先映入我们眼帘的它的Pythonshell,我们通过它可以在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就会启动自动缩进功能。如下图所示:

Python IDLE入门简介

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

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

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

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

现在只要按下回车键,IDLE就会自动完成此函数名。如果不合适的话,还可以向上、向下方向键进行查找。

创建好程序之后,从“File”菜单中选择“Save”保存程序。如果是新文件,会弹出“Saveas”对话框,我们可以在该对话框中指定文件名和保存位置。保存后,文件名会自动显示在屏幕顶部的蓝色标题栏中。如果文件中存在尚未存盘的内容,标题栏的文件名前后会有星号出现。

四、常用编辑功能详解

现在我们将介绍编写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”菜单中选择“RunModule”菜单项,该菜单项的功能是执行当前文件。对于我们的示例程序,执行情况如下图所示:

Python IDLE入门简介

六、使用IDLE的调试器

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

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

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

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

七、IDLE的命令历史功能

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

八、小结

IDLE是Python软件包自带的一个集成开发环境,非常适合于Python编程的初学者。本文通过一个示例程序详细介绍了IDLE在程序开发过程中的使用方法,希望能对大家学习Python编程有所帮助。如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Django实现图片文字同时提交的方法
May 26 Python
如何使用python爬取csdn博客访问量
Feb 14 Python
python通过opencv实现批量剪切图片
Nov 13 Python
python做量化投资系列之比特币初始配置
Jan 23 Python
pandas dataframe的合并实现(append, merge, concat)
Jun 24 Python
详解python实现小波变换的一个简单例子
Jul 18 Python
Python 模拟生成动态产生验证码图片的方法
Feb 01 Python
python图形开发GUI库wxpython使用方法详解
Feb 14 Python
selenium+python配置chrome浏览器的选项的实现
Mar 18 Python
Python selenium文件上传下载功能代码实例
Apr 13 Python
python要安装在哪个盘
Jun 15 Python
python爬虫scrapy框架之增量式爬虫的示例代码
Feb 26 Python
利用Python找出序列中出现最多的元素示例代码
Dec 08 #Python
Python排序搜索基本算法之归并排序实例分析
Dec 08 #Python
Python实现基于二叉树存储结构的堆排序算法示例
Dec 08 #Python
Python排序搜索基本算法之堆排序实例详解
Dec 08 #Python
基于Django contrib Comments 评论模块(详解)
Dec 08 #Python
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
Dec 08 #Python
python在ubuntu中的几种安装方法(小结)
Dec 08 #Python
You might like
操作Oracle的php类
2006/10/09 PHP
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
2013/01/24 Javascript
Node.js和PHP根据ip获取地理位置的方法
2014/03/14 Javascript
修改或扩展jQuery原生方法的代码实例
2015/01/13 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
谈谈AngularJs中的隐藏和显示
2015/12/09 Javascript
JavaScript实现自动切换图片代码
2016/10/11 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
2016/12/02 Javascript
vuejs绑定class和style样式
2017/04/11 Javascript
js获取一组日期中最近连续的天数
2017/05/25 Javascript
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
微信小程序实现全国机场索引列表
2018/01/31 Javascript
jQuery实现的回车触发按钮事件功能示例
2018/03/25 jQuery
animate.css在vue项目中的使用教程
2018/08/05 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
vue 实现LED数字时钟效果(开箱即用)
2019/12/08 Javascript
[50:02]完美世界DOTA2联赛循环赛 Magma vs IO BO2第一场 11.01
2020/11/02 DOTA
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
python多进程中的内存复制(实例讲解)
2018/01/05 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
python+unittest+requests实现接口自动化的方法
2018/11/29 Python
python通过ffmgep从视频中抽帧的方法
2018/12/05 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
python3.7实现云之讯、聚合短信平台的短信发送功能
2019/09/26 Python
pytorch多GPU并行运算的实现
2019/09/27 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
Python调用jar包方法实现过程解析
2020/08/11 Python
35款精致的 CSS3 和 HTML5 网页模板 推荐
2012/08/03 HTML / CSS
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
施工质量承诺书范文
2014/05/30 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
微信早安问候语
2015/11/10 职场文书
如何写好竞聘报告
2019/04/03 职场文书