Python 入门(3)-- IDLE的使用细节

来源:互联网 发布:java 面试 书籍 编辑:程序博客网 时间:2024/04/28 22:13

 

在第一篇中提到过IDLE的使用,稍作回顾:在窗口中编译python程序;使用菜单中Run->Run Module或者使用快捷键:Ctrl-F5运行python程序。本篇我们再来关注一些IDLE的细节。Run->Run Module总是运行文本的最新版本,每次修改后运行前,IDLE会提醒你保存文件。

Import

IDLE下也可以用import来运行文件。如运行test.py文件:improt test

但是对于一个文件,improt只能在第一次导入时运行文件。在第一次导入之后,其他的导入都不会再工作,甚至在另一个窗口中改变并保存了模块的源代码文件也不行。实验了下,发现重启IDEL后依然不行。这是有意设计的结果。导入是一个开销很大的操作以至于每个程序不能够重复多于1次。

Reload

但如果想要python在同一次会话中再次运行文件,需要用内置的reload(重载)函数。

调用格式是:reload(test)

使用reload,输出中会包含<module 'test' from'C:/Python27/Practice Code/test.pyc'>

这是因为Reload是一个函数,而import是一个语句。调用时需要传递模块名称给reload函数作为括号中的参数,因此在重载时得到了额外的一行输出。最后一行输出是reload调用后的返回值的打印显示,reload函数的返回值是一个python模块对象。但对于未经过修改的程序,调用reload函数,也仅仅会得到一行类似上面的返回值的打印显示。

需要额外说明的是,如果没有使用importreload函数会报错。也就是说reload函数需要在已经使用了import的情况下使用。可以使用Alt-pAlt-n回滚到上一条命令,另外, IDLE中没有清屏选项。

execfile

另一个通过交互提示模式运行文件的方法是内置函数execfile(‘test.py’)。默认情况下,每次调用execfile,都会运行一个新文件,但从技术上来说它并没有导入模块。

模块导入是一种运行代码文件的方法模块也是python程序最大的程序结构。Python程序往往有多个模块构成,通过import语句连接在一起。每个模块文件是一个独立完备的变量包装,即一个命名空间。一个模块文件不能看到其他文件定义的变量名,除非他明确地导入了那个文件,所以模块文件在代码文件中起到了最小化命名冲突的作用。

如果发生了链接错误,试一下通过单个进程的模式启动IDLEIDLE要求在其独立的用户和GUI进程间通信,有时候会在特定的平台上发生启动错误。如果遇到了这样的链接错误,它常常可以通过系统命令行使IDLE运行在单一的模式下进行启动,从而避免了通信的问题:-n命令行标志为可以强制进入这种模式。如,在Windows撒谎功能,可以运行系统命令 test.py –n.


这篇的内容就是这些了,希望对大家有帮助,待续。

 

原创粉丝点击