IDLE

IDLE是Python的集成开发和学习环境。

IDLE具有以下功能:

  • 使用tkinterGUI工具包编码为100%纯Python

  • 跨平台:在Windows,Unix和Mac OS X上大体相同
  • Python shell窗口(交互式解释器),具有代码输入,输出和错误消息的颜色
  • 多窗口文本编辑器,多重撤销,Python着色,智能缩进,调用提示,自动完成和其他功能
  • 在任何窗口中搜索,在编辑器窗口中进行替换,并搜索多个文件(grep)
  • 具有持久性断点的调试器,步进以及查看全局和本地命名空间
  • 配置,浏览器和其他对话框

1.菜单

IDLE有两种主要的窗口类型,Shell窗口和Editor窗口。可以同时拥有多个编辑器窗口。输出窗口(例如用于编辑/在文件中查找)是编辑窗口的子类型。它们目前与编辑器窗口具有相同的顶部菜单,但是具有不同的默认标题和上下文菜单。

IDLE的菜单根据当前选择的窗口动态更改。下面记录的每个菜单都指示与哪个窗口类型相关联。

1.1 文件菜单(Shell 和编辑器)

新建FileCreate一个新的文件编辑窗口。打开...用打开对话框打开一个现有的文件。最近的文件打开最近的文件列表。单击一个打开它。打开模块...打开一个现有的模块(搜索sys.path)。类浏览器显示当前编辑器文件中的函数,类和方法的树结构。在shell中,首先打开一个模块.Path BrowserShow sys.path树结构中的目录,模块,函数,类和方法。如果存在,则将当前窗口保存到关联的文件中。自打开或上次保存以来更改的Windows在窗口标题之前和之后都有*。如果没有关联的文件,请执行另存为。另存为...使用另存为对话框保存当前窗口。保存的文件成为窗口的新关联文件。保存副本为...

1.2 编辑菜单(Shell 和编辑器)

撤消撤消对当前窗口的最后更改。最多1000次更改可能会被撤消.RedoRedo最后一次撤消当前窗口的更改.CutCopy选择进入系统范围的剪贴板; 然后将selection.Copy选择删除到系统范围的剪贴板中。将系统范围的剪贴板的内容粘贴到当前窗口中。

剪贴板功能也可在上下文菜单中使用。

选择全部选择当前窗口的全部内容。查找...打开具有多个选项的搜索对话框查找再次重复上次搜索,如果有的话。找到SelectionSearch为当前选定的字符串,如果有的话。找到文件...打开文件搜索对话框。将结果放入新的输出窗口中。替换...打开搜索和替换对话框。转到LineMove游标所需的行号并使该行可见。显示完成打开可滚动列表以允许选择关键字和属性。请参阅下面“提示”部分的“完成”。展开WordExpand您已输入的前缀,以匹配同一窗口中的完整单词; 重复以获得不同的扩展。显示调用tipA函数的未闭括号后,用函数参数hint打开一个小窗口。显示周围的parens高亮显示周围的括号。

1.3 格式菜单(仅限编辑器窗口)

缩进区域通过缩进宽度向右移动所选行(默认4个空格).Dedent RegionShift缩进宽度左侧的所选行(默认4个空格)。注释选定行前的RegionInsert ##。注释RegionRemove从选定行的前导#或##划线区域将主要的空间延伸到标签中。(注意:我们建议使用4个空格块来缩进Python代码。)请删除RegionTurn 全部标签到正确数量的空格中。切换标签打开一个对话框,用于在具有空格和标签的缩进之间切换。新缩进宽度打开一个对话框来更改缩进宽度。Python社区接受的默认值是4个空格.Format ParagraphReformat注释块中的当前空行分隔段落或多行字符串或字符串中的选定行。段落中的所有行将被格式化为小于N列,其中N默认为72.Strip尾随空白删除行的最后一个非空格字符后的任何空格字符。

1.4 运行菜单(仅限编辑器窗口)

Python ShellOpen或唤醒Python Shell窗口。检查ModuleCheck在编辑器窗口中当前打开的模块的语法。如果模块未保存,IDLE将提示用户保存或自动保存,如在“空闲设置”对话框的“常规”选项卡中所选。如果出现语法错误,则在编辑器窗口中显示大概位置。运行模块检查模块(上图)。如果没有错误,请重新启动外壳以清理环境,然后执行该模块。输出显示在Shell窗口中。请注意,输出需要使用printwrite。执行完成后,Shell将保留焦点并显示提示。此时,可以交互式地探索执行结果。这与python -i file使用命令行执行文件类似。

1.5 Shell菜单(仅限Shell 窗口)

查看上次重新启动将Shell窗口滚动到最后一个Shell重新启动Shell重新启动shell以清除环境。中断Execution停止正在运行的程序。

1.6。调试菜单(仅限Shell窗口)

转到当前行的File / LineLook。用光标,上面一行代表文件名和行号。如果找到,请打开文件(如果尚未打开),并显示该行。使用它可以查看异常回溯中引用的源代码行和查找文件中找到的代码行。也可在Shell窗口的上下文菜单中找到并输出windows.Debugger(toggle)激活时,在Shell中输入或从编辑器运行的代码将在调试器下运行。在编辑器中,可以使用上下文菜单设置断点。此功能仍然不完整,有点实验性。堆栈查看器显示堆栈跟踪树形控件中的最后一个异常,可访问本地和全局。自动打开Stack ViewerToggle会自动在未处理的异常情况下打开堆栈查看器。

1.7 选项菜单(Shell 和编辑器)

配置IDLE

打开一个配置对话框,并为以下内容更改首选项:字体,缩进,键绑定,文本颜色主题,启动窗口和大小,其他帮助源和扩展(请参阅下文)。在OS X上,通过选择应用程序菜单中的首选项来打开配置对话框。要在较旧的IDLE中使用新的内置颜色主题(IDLE Dark),请将其保存为新的自定义主题。

非默认用户设置保存在用户主目录中的.idlerc目录中。通过编辑或删除.idlerc中的一个或多个文件来解决由不良用户配置文件引起的问题。

代码上下文(切换)(仅限编辑器窗口)在编辑窗口的顶部打开窗格,其中显示在窗口顶部滚动的代码的代码上下文。

1.8 窗口菜单(Shell 和编辑器)

缩放高度在正常大小和最大高度之间切换窗口。初始大小默认为40行80个字符,除非在配置IDLE对话框的常规选项卡上更改。

该菜单的其余部分列出了所有打开的窗口的名称; 选择一个将其带到前台(如果需要,可以对其进行解密)。

1.9 帮助菜单(Shell 和编辑器)

关于IDLEDisplay版本,版权,许可证,学分等等.IDLE帮助显示IDLE帮助文件,详细说明菜单选项,基本编辑和导航以及其他tips.Python Docs访问本地Python文档(如果已安装),或者启动Web浏览器并打开docs.python.org显示最新的Python文档.Turtle Demo使用示例python代码和turtle绘图运行turtledemo模块。

可以在此处添加其他帮助源,并在常规选项卡下的配置IDLE对话框中添加。

1.10 上下文菜单

在窗口中右键单击打开上下文菜单(按住Control键并单击OS X)。上下文菜单在编辑菜单上也有标准的剪贴板功能。

CutCopy选择到系统范围的剪贴板中; 然后将selection.CopyCopy选择删除到系统范围的剪贴板中。将系统范围的剪贴板的内容粘贴到当前窗口中。

编辑器窗口也具有断点功能。设置了断点的行被特别标记。在调试器下运行时,断点只有效果。文件的断点保存在用户的.idlerc目录中。

设置断点在当前行上设置一个断点。清除断点清除该行上的断点。

Shell和Output窗口具有以下内容。

在Debug菜单中转到file / lineSame。

2.编辑和导航

在本节中,'C'表示ControlWindows和Unix上的Command密钥,以及Mac OSX上的密钥。

  • Backspace删除到左侧;Del删除到右侧
  • C-Backspace删除剩下的词; C-Del删除右侧的词
  • 方向键和Page Up/ Page Down或四处移动
  • C-LeftArrowC-RightArrow通过文字移动
  • Home/ End开始/结束行
  • C-Home/ C-End文件的开始/结束
  • 一些有用的Emacs绑定从Tcl / Tk继承而来:
-  `C-a` beginning of line
-  `C-e` end of line
-  `C-k` kill line (but doesn’t put it in clipboard)
-  `C-l` center window around the insertion point
-  `C-b` go backwards one character without deleting (usually you can also use the cursor key for this)
-  `C-f` go forward one character without deleting (usually you can also use the cursor key for this)
-  `C-p` go up one line (usually you can also use the cursor key for this)
-  `C-d` delete next character

标准键绑定(如C-c复制和C-v粘贴)可能会起作用。在“配置IDLE”对话框中选择键绑定。

2.1 自动缩进

在块打开语句之后,下一行缩进4个空格(在Python Shell窗口中由一个选项卡)。 在某些关键字(中断,返回等)后,下一行是缩进的。 在领先的缩进中,如果Backspace在那里,则会删除多达4个空格。 Tab插入空格(在Python Shell窗口的一个选项卡中),数字取决于缩进宽度。 由于Tcl / Tk限制,目前选项卡限制为四个空格。

另请参阅编辑菜单中的缩进/缩进区域命令。

2.2 实现

完成提供了函数,类和类的属性,既有内置的也有用户定义的。还为文件名提供完成。

AutoCompleteWindow(ACW)将在“。”后面的预定义延迟(默认值为两秒)后打开。或者(在一个字符串中)输入os.sep。如果在其中一个字符(加上零个或更多其他字符)之后键入了一个选项卡,如果发现可能的延续,ACW将立即打开。

如果输入的字符只有一个可能的完成,Tab将在不打开ACW的情况下提供该完成。

'显示完成'将强制打开完成窗口,默认情况下,C空间将打开完成窗口。 在一个空字符串中,这将包含当前目录中的文件。 在空白行中,它将包含当前名称空间中的内置和用户定义的函数和类,以及所有导入的模块。 如果输入了一些字符,ACW将尝试更具体。

如果键入一串字符,则ACW选择将跳转到与这些字符最接近的条目。输入 tab将导致在编辑器窗口或Shell中输入最长的非歧义匹配。tab连续两次将提供当前的ACW选择,将返回或双击。光标键,Page Up / Down,鼠标选择和滚轮都在ACW上运行。

通过在'。'之后键入隐藏名称的开始,可以访问“隐藏”属性。“_”。 这允许访问设置了__all__的模块,或者访问类专用属性。

完成和'扩展字'设施可以节省大量的输入!

完成目前仅限于名称空间中的完成。 不会通过__main__和sys.modules找到编辑器窗口中的名称。 用导入运行该模块一次以纠正这种情况。 请注意,IDLE本身在sys.modules中放置了很多模块,默认情况下可以找到很多模块。 重新模块。

如果您不喜欢ACW弹出窗口,只需延长延迟时间或禁用扩展。

2.3 Calltips

当一个类型(在可访问功能的名称后面显示时,会显示一个提示。名称表达式可能包含点和下标。一个calltip会一直保留,直到它被点击,光标移出参数区域或)键入。当光标位于定义的参数部分时,菜单或快捷方式显示一个提示。

calltip由函数签名和文档字符串的第一行组成。对于没有可访问签名的内建函数,calltip由第五行或第一个空白行上的所有行组成。这些细节可能会改变。

这组可访问的 函数取决于哪些模块已导入用户进程,包括由Idle本身导入的模块,以及自上次重新启动以来运行了哪些定义。

例如,重新启动Shell并输入itertools.count(。因为Idle将itertools导入到用户进程中供它自己使用(这可能会改变),所以会出现一个提示信息(输入turtle.write(并且不显示任何内容),Idle不会导入turtle。 菜单或快捷方式也不做任何事情。输入导入import turtle,然后turtle.write将进行工作。

在编辑器中,导入语句在运行文件之前不起作用。有人可能希望在顶部写入导入语句之后运行文件,或者在编辑之前立即运行现有文件。

2.4 Python Shell窗口

  • C-c 中断执行命令
  • C-d 发送文件结束; 如果在>>>提示符下键入,则关闭窗口
  • Alt-/ (扩展词)对于减少键入也很有用

命令历史

-  `Alt-p` retrieves previous command matching what you have typed. On OS X use `C-p`.
-  `Alt-n` retrieves next. On OS X use `C-n`.
-  `Return` while on any previous command retrieves that command

2.5 文本颜色

闲置默认为白色文字为黑色,但为具有特殊含义的文字添加颜色。 对于shell,这些是shell输出,shell错误,用户输出和用户错误。 对于Python代码,在shell提示符或编辑器中,它们是关键字,内建类和函数名称,类和def后面的名称,字符串和注释。 对于任何文本窗口,这些是光标(如果存在),找到的文本(如果可能)和选定的文本。

文字着色是在背景中完成的,因此偶尔可以看到无色文字。要更改配色方案,请使用“配置IDLE”对话框的“突出显示”选项卡。编辑器中的调试器断点行标记以及弹出窗口和对话框中的文本不是用户可配置的。

3.启动和代码执行

在使用-s选项启动时,IDLE将执行由环境变量IDLESTARTUP或PYTHONSTARTUP引用的文件。 IDLE首先检查IDLESTARTUP; 如果存在IDLESTARTUP,则运行引用的文件。 如果IDLESTARTUP不存在,则IDLE将检查PYTHONSTARTUP。 由这些环境变量引用的文件是存储IDLE shell中频繁使用的函数或执行导入语句以导入公共模块的便利位置。

另外,如果Tk存在,它也会加载一个启动文件。 请注意,Tk文件无条件加载。 这个附加文件是.Idle.py,并在用户的主目录中查找。 此文件中的语句将在Tk命名空间中执行,因此该文件对于导入要从IDLE的Python shell中使用的函数没有用处。

3.1 命令行用法

idle.py [-c command] [-d] [-e] [-h] [-i] [-r file] [-s] [-t title] [-] [arg] ...

-c command  run command in the shell window
-d          enable debugger and open shell window
-e          open editor window
-h          print help message with legal combinations and exit
-i          open shell window
-r file     run file in shell window
-s          run $IDLESTARTUP or $PYTHONSTARTUP first, in shell window
-t title    set title of shell window
-           run stdin in shell (- must be last option before args)

如果有参数:

  • 如果使用 - ,-c或r,则所有参数都放置在sys.argv [1:...]中,并且sys.argv [0]设置为'','-c'或'-r'。 即使在“选项”对话框中设置了默认值,也不会打开编辑器窗口。
  • 否则,参数是打开的文件进行编辑并sys.argv反映传递给IDLE自身的参数。

3.2 空闲 - 控制台差异

尽可能使用IDLE执行Python代码的结果与在控制台窗口中执行相同代码的结果相同。但是,不同的界面和操作偶尔会影响可见结果。例如,sys.modules从更多条目开始。

IDLE还将sys.stdin,sys.stdout和sys.stderr替换为从Shell窗口获取输入并将输出发送到Shell窗口的对象。 当这个窗口有焦点时,它控制键盘和屏幕。 这通常是透明的,但直接访问键盘和屏幕的功能将不起作用。 如果sys用重新加载(sys)重置,则IDLE的更改将丢失,输入,raw_input和print等内容将无法正常工作。

利用IDLE的Shell,您可以输入,编辑和回顾完整的报表。 一些控制台一次只能使用一条物理线路。 IDLE使用exec来运行每个语句。 因此,总是为每个语句定义'__builtins__'。

3.3 没有子进程运行

默认情况下,IDLE通过使用内部回送接口的套接字在单独的子进程中执行用户代码。此连接不是外部可见的,并且没有数据发送到互联网或从互联网接收数据。如果防火墙软件无论如何抱怨,你可以忽略它。

如果尝试使套接字连接失败,空闲将通知您。此类故障有时是暂时的,但如果持续存在,则问题可能是防火墙阻止连接或错误配置特定系统。在问题解决之前,可以使用-n命令行开关运行Idle。

如果使用-n命令行开关启动IDLE,它将在单个进程中运行,并且不会创建运行RPC Python执行服务器的子进程。如果Python无法在平台上创建子进程或RPC套接字接口,这可能很有用。但是,在这种模式下,用户代码与IDLE本身并不是隔离的。另外,选择运行/运行模块(F5)时,环境不会重新启动。如果您的代码已被修改,您必须重新加载()受影响的模块并重新导入任何特定项目(例如从foo import baz),如果更改生效。由于这些原因,如果可能的话,最好使用缺省子进程运行IDLE。

自3.4版以来已弃用。

4.帮助和偏好

4.1 其他帮助来源

IDLE包含一个名为“Python Docs”的帮助菜单条目,该条目将打开广泛的帮助来源,包括docs.python.org上提供的教程。可以随时使用“配置IDLE”对话框从帮助菜单中添加或删除选定的URL。有关更多信息,请参阅IDLE帮助菜单中的IDLE帮助选项。

4.2 设置首选项

字体首选项,高亮显示,按键和常规首选项可通过选项菜单上的配置IDLE进行更改。密钥可以是用户定义的; IDLE提供四个内置密钥集。另外,用户可以在键标签下的配置IDLE对话框中创建一个自定义键集。

4.3 扩展

IDLE包含一个扩展工具。扩展的关联可以使用配置扩展进行更改。有关更多信息,请参阅idlelib目录中config-extensions.def的开头部分。目前的默认扩展名是:

  • FormatParagraph
  • AutoExpand
  • ZoomHeight
  • ScriptBinding
  • CallTips
  • ParenMatch
  • AutoComplete
  • CodeContext
  • RstripExtension

扫码关注云+社区

领取腾讯云代金券