2019-04-08 23:22:26 +08:00

12 lines
43 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="body" role="main"><div class="section" id="idle"><h1><span class="yiyi-st" id="yiyi-10">25.5. </span><span class="yiyi-st" id="yiyi-11">IDLE </span></h1><p><span class="yiyi-st" id="yiyi-12"><strong>源代码:</strong> <a class="reference external" href="https://hg.python.org/cpython/file/3.5/Lib/idlelib/">Lib/idlelib/</a></span></p><p><span class="yiyi-st" id="yiyi-13">IDLE 是 Python 的集成开发和学习环境。</span></p><p><span class="yiyi-st" id="yiyi-14">IDLE 具有以下特性:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-15">使用 <a class="reference internal" href="tkinter.html#module-tkinter" title="tkinter: Interface to Tcl/Tk for graphical user interfaces"><code class="xref py py-mod docutils literal"><span class="pre">tkinter</span></code></a> GUI 工具包100% 纯 Python 代码编写</span></li><li><span class="yiyi-st" id="yiyi-16">跨平台:在 WindowsUnix 和 Mac OS X 上工作大致相同</span></li><li><span class="yiyi-st" id="yiyi-17">Python shell 窗口(交互式解释器),带有代码输入,输出和错误消息高亮显示</span></li><li><span class="yiyi-st" id="yiyi-18">多窗口文本编辑器与多重撤消Python 代码高亮,智能缩进,调用提示,自动完成和其他功能</span></li><li><span class="yiyi-st" id="yiyi-19">在任何窗口中搜索在编辑器窗口中替换以及搜索多个文件grep</span></li><li><span class="yiyi-st" id="yiyi-20">调试器具有持久断点的,步进和查看全局和本地命名空间</span></li><li><span class="yiyi-st" id="yiyi-21">配置,浏览器和其他对话框</span></li></ul><div class="section" id="menus"><h2><span class="yiyi-st" id="yiyi-22">25.5.1. </span><span class="yiyi-st" id="yiyi-23">Menus</span></h2><p><span class="yiyi-st" id="yiyi-24">IDLE 有两种主窗口类型Shell 窗口和编辑器窗口。</span><span class="yiyi-st" id="yiyi-25">可以同时有多个编辑器窗口。</span><span class="yiyi-st" id="yiyi-26">输出窗口,例如用于编辑/在文件中查找,是编辑窗口的子类型。</span><span class="yiyi-st" id="yiyi-27">它们当前具有与编辑器窗口相同的顶部菜单,但是具有不同的默认标题和上下文菜单。</span></p><p><span class="yiyi-st" id="yiyi-28">IDLE 的菜单根据当前选择的窗口动态变化。</span><span class="yiyi-st" id="yiyi-29">下面列出的每个菜单指示与之相关联的窗口类型。</span></p><div class="section" id="file-menu-shell-and-editor"><h3><span class="yiyi-st" id="yiyi-30">25.5.1.1. </span><span class="yiyi-st" id="yiyi-31">文件菜单(外壳和编辑器)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-32">新文件</span></dt><dd><span class="yiyi-st" id="yiyi-33">创建一个新的文件编辑窗口。</span></dd><dt><span class="yiyi-st" id="yiyi-34">打开...</span></dt><dd><span class="yiyi-st" id="yiyi-35">使用打开对话框打开现有文件。</span></dd><dt><span class="yiyi-st" id="yiyi-36">最近文件</span></dt><dd><span class="yiyi-st" id="yiyi-37">打开最近的文件列表。</span><span class="yiyi-st" id="yiyi-38">单击一个以打开它。</span></dd><dt><span class="yiyi-st" id="yiyi-39">打开模块...</span></dt><dd><span class="yiyi-st" id="yiyi-40">打开现有模块(搜索 sys.path</span></dd></dl><dl class="docutils" id="index-1"><dt><span class="yiyi-st" id="yiyi-41">类浏览器</span></dt><dd><span class="yiyi-st" id="yiyi-42">在树结构中显示当前编辑器文件中的函数,类和方法。</span><span class="yiyi-st" id="yiyi-43">在shell中首先打开一个模块。</span></dd><dt><span class="yiyi-st" id="yiyi-44">路径浏览器</span></dt><dd><span class="yiyi-st" id="yiyi-45">在树结构中显示sys.path目录模块函数类和方法。</span></dd><dt><span class="yiyi-st" id="yiyi-46">保存</span></dt><dd><span class="yiyi-st" id="yiyi-47">将当前窗口保存到关联文件(如果有)。</span><span class="yiyi-st" id="yiyi-48">自打开或上次保存以来已更改的Windows在窗口标题之前和之后都有*。</span><span class="yiyi-st" id="yiyi-49">如果没有相关联的文件,请另行另存为。</span></dd><dt><span class="yiyi-st" id="yiyi-50">另存为...</span></dt><dd><span class="yiyi-st" id="yiyi-51">使用“另存为”对话框保存当前窗口。</span><span class="yiyi-st" id="yiyi-52">保存的文件将成为窗口的新关联文件。</span></dd><dt><span class="yiyi-st" id="yiyi-53">另存为...</span></dt><dd><span class="yiyi-st" id="yiyi-54">将当前窗口保存到其他文件,而不更改关联的文件。</span></dd><dt><span class="yiyi-st" id="yiyi-55">打印窗口</span></dt><dd><span class="yiyi-st" id="yiyi-56">将当前窗口打印到默认打印机。</span></dd><dt><span class="yiyi-st" id="yiyi-57"></span></dt><dd><span class="yiyi-st" id="yiyi-58">关闭当前窗口(如果未保存,请保存)。</span></dd><dt><span class="yiyi-st" id="yiyi-59">出口</span></dt><dd><span class="yiyi-st" id="yiyi-60">关闭所有窗口并退出IDLE要求保存未保存的窗口</span></dd></dl></div><div class="section" id="edit-menu-shell-and-editor"><h3><span class="yiyi-st" id="yiyi-61">25.5.1.2. </span><span class="yiyi-st" id="yiyi-62">编辑菜单(外壳和编辑器)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-63">撤消</span></dt><dd><span class="yiyi-st" id="yiyi-64">撤消当前窗口的最后一次更改。</span><span class="yiyi-st" id="yiyi-65">最多可以撤消1000次更改。</span></dd><dt><span class="yiyi-st" id="yiyi-66">重做</span></dt><dd><span class="yiyi-st" id="yiyi-67">将最后一次撤消的更改重做到当前窗口。</span></dd><dt><span class="yiyi-st" id="yiyi-68">剪切</span></dt><dd><span class="yiyi-st" id="yiyi-69">将选择内容复制到系统范围的剪贴板;然后删除选择。</span></dd><dt><span class="yiyi-st" id="yiyi-70">复制</span></dt><dd><span class="yiyi-st" id="yiyi-71">将选择内容复制到系统范围的剪贴板。</span></dd><dt><span class="yiyi-st" id="yiyi-72">粘贴</span></dt><dd><span class="yiyi-st" id="yiyi-73">将系统范围剪贴板的内容插入当前窗口。</span></dd></dl><p><span class="yiyi-st" id="yiyi-74">剪贴板功能也可在上下文菜单中使用。</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-75">全选</span></dt><dd><span class="yiyi-st" id="yiyi-76">选择当前窗口的全部内容。</span></dd><dt><span class="yiyi-st" id="yiyi-77">找...</span></dt><dd><span class="yiyi-st" id="yiyi-78">打开包含许多选项的搜索对话框</span></dd><dt><span class="yiyi-st" id="yiyi-79">再次查找</span></dt><dd><span class="yiyi-st" id="yiyi-80">重复上一次搜索,如果有一个。</span></dd><dt><span class="yiyi-st" id="yiyi-81">查找选择</span></dt><dd><span class="yiyi-st" id="yiyi-82">搜索当前选择的字符串(如果有)。</span></dd><dt><span class="yiyi-st" id="yiyi-83">在文件中查找...</span></dt><dd><span class="yiyi-st" id="yiyi-84">打开文件搜索对话框。</span><span class="yiyi-st" id="yiyi-85">将结果放入新的输出窗口。</span></dd><dt><span class="yiyi-st" id="yiyi-86">更换...</span></dt><dd><span class="yiyi-st" id="yiyi-87">打开搜索和替换对话框。</span></dd><dt><span class="yiyi-st" id="yiyi-88">转到线</span></dt><dd><span class="yiyi-st" id="yiyi-89">将光标移动到请求的行号,并使该行可见。</span></dd><dt><span class="yiyi-st" id="yiyi-90">显示完成</span></dt><dd><span class="yiyi-st" id="yiyi-91">打开一个可滚动的列表,允许选择关键字和属性。</span><span class="yiyi-st" id="yiyi-92">请参阅下面的提示部分中的完成。</span></dd><dt><span class="yiyi-st" id="yiyi-93">展开Word</span></dt><dd><span class="yiyi-st" id="yiyi-94">展开您键入的前缀以匹配同一窗口中的完整字词;重复得到不同的展开。</span></dd><dt><span class="yiyi-st" id="yiyi-95">显示通话提示</span></dt><dd><span class="yiyi-st" id="yiyi-96">在函数的未闭合括号后打开一个带有函数参数hints的小窗口。</span></dd><dt><span class="yiyi-st" id="yiyi-97">显示周围括号</span></dt><dd><span class="yiyi-st" id="yiyi-98">突出显示周围的括号。</span></dd></dl></div><div class="section" id="format-menu-editor-window-only"><h3><span class="yiyi-st" id="yiyi-99">25.5.1.3. </span><span class="yiyi-st" id="yiyi-100">格式菜单(仅限编辑器窗口)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-101">缩进区域</span></dt><dd><span class="yiyi-st" id="yiyi-102">将所选线向右移动缩进宽度默认为4个空格</span></dd><dt><span class="yiyi-st" id="yiyi-103">Dedent区域</span></dt><dd><span class="yiyi-st" id="yiyi-104">将选定的行向左移动缩进宽度默认为4个空格</span></dd><dt><span class="yiyi-st" id="yiyi-105">评论区域</span></dt><dd><span class="yiyi-st" id="yiyi-106">在所选行的前面插入##。</span></dd><dt><span class="yiyi-st" id="yiyi-107">取消注释区域</span></dt><dd><span class="yiyi-st" id="yiyi-108">从所选行中删除前导#或##。</span></dd><dt><span class="yiyi-st" id="yiyi-109">Tabify区域</span></dt><dd><span class="yiyi-st" id="yiyi-110"><em>领先</em>的空格转换为标签。</span><span class="yiyi-st" id="yiyi-111">注意我们建议使用4个空格来缩进Python代码。</span></dd><dt><span class="yiyi-st" id="yiyi-112">未分类区域</span></dt><dd><span class="yiyi-st" id="yiyi-113"><em>所有 T0&gt;标签切换到正确的空格数。</em></span></dd><dt><span class="yiyi-st" id="yiyi-114">切换标签页</span></dt><dd><span class="yiyi-st" id="yiyi-115">打开对话框,在使用空格和制表符缩进之间切换。</span></dd><dt><span class="yiyi-st" id="yiyi-116">新缩进宽度</span></dt><dd><span class="yiyi-st" id="yiyi-117">打开对话框以更改缩进宽度。</span><span class="yiyi-st" id="yiyi-118">Python社区接受的默认值为4个空格。</span></dd><dt><span class="yiyi-st" id="yiyi-119">格式段落</span></dt><dd><span class="yiyi-st" id="yiyi-120">重新格式化注释块中的当前空白行分隔的段或多行字符串或字符串中的选定行。</span><span class="yiyi-st" id="yiyi-121">段落中的所有行将格式化为小于N列其中N默认为72。</span></dd><dt><span class="yiyi-st" id="yiyi-122">剥离尾部空格</span></dt><dd><span class="yiyi-st" id="yiyi-123">删除行的最后一个非空格字符后面的任何空格字符。</span></dd></dl></div><div class="section" id="run-menu-editor-window-only"><h3><span class="yiyi-st" id="yiyi-124">25.5.1.4. </span><span class="yiyi-st" id="yiyi-125">运行菜单(仅限编辑器窗口)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-126">Python Shell</span></dt><dd><span class="yiyi-st" id="yiyi-127">打开或唤醒Python Shell窗口。</span></dd><dt><span class="yiyi-st" id="yiyi-128">检查模块</span></dt><dd><span class="yiyi-st" id="yiyi-129">检查当前在编辑器窗口中打开的模块的语法。</span><span class="yiyi-st" id="yiyi-130">如果模块未保存则IDLE将提示用户保存或自动保存如“空闲设置”对话框的“常规”选项卡中所选。</span><span class="yiyi-st" id="yiyi-131">如果存在语法错误,则在编辑器窗口中指示大致位置。</span></dd><dt><span class="yiyi-st" id="yiyi-132">运行模块</span></dt><dd><span class="yiyi-st" id="yiyi-133">做检查模块(上)。</span><span class="yiyi-st" id="yiyi-134">如果没有错误重新启动shell以清除环境然后执行模块。</span><span class="yiyi-st" id="yiyi-135">输出显示在Shell窗口中。</span><span class="yiyi-st" id="yiyi-136">请注意,输出需要使用<code class="docutils literal"><span class="pre">print</span></code><code class="docutils literal"><span class="pre">write</span></code></span><span class="yiyi-st" id="yiyi-137">当执行完成时Shell保持焦点并显示提示。</span><span class="yiyi-st" id="yiyi-138">在这一点上,可以交互地探索执行的结果。</span><span class="yiyi-st" id="yiyi-139">这与在命令行中使用<code class="docutils literal"><span class="pre">python</span> <span class="pre">-i</span> <span class="pre">文件</span></code>执行文件类似。</span></dd></dl></div><div class="section" id="shell-menu-shell-window-only"><h3><span class="yiyi-st" id="yiyi-140">25.5.1.5. </span><span class="yiyi-st" id="yiyi-141">外壳菜单(仅限外壳窗口)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-142">查看上次重新启动</span></dt><dd><span class="yiyi-st" id="yiyi-143">将shell窗口滚动到最后一次Shell重启。</span></dd><dt><span class="yiyi-st" id="yiyi-144">重新启动Shell</span></dt><dd><span class="yiyi-st" id="yiyi-145">重新启动shell以清除环境。</span></dd></dl></div><div class="section" id="debug-menu-shell-window-only"><h3><span class="yiyi-st" id="yiyi-146">25.5.1.6. </span><span class="yiyi-st" id="yiyi-147">调试菜单仅适用于Shell窗口</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-148">转到文件/行</span></dt><dd><span class="yiyi-st" id="yiyi-149">看当前行。</span><span class="yiyi-st" id="yiyi-150">用光标,上面的行为文件名和行号。</span><span class="yiyi-st" id="yiyi-151">如果找到,打开文件,如果还没有打开,并显示行。</span><span class="yiyi-st" id="yiyi-152">使用它可以查看异常跟踪中引用的源代码行和通过在文件中查找找到的行。</span><span class="yiyi-st" id="yiyi-153">也可以在Shell窗口和输出窗口的上下文菜单中使用。</span></dd></dl><dl class="docutils" id="index-3"><dt><span class="yiyi-st" id="yiyi-154">调试器(切换)</span></dt><dd><span class="yiyi-st" id="yiyi-155">激活时在Shell中输入或从编辑器运行的代码将在调试器下运行。</span><span class="yiyi-st" id="yiyi-156">在编辑器中,可以使用上下文菜单设置断点。</span><span class="yiyi-st" id="yiyi-157">此功能仍然不完整,有些实验性。</span></dd><dt><span class="yiyi-st" id="yiyi-158">堆栈查看器</span></dt><dd><span class="yiyi-st" id="yiyi-159">在树窗口小部件中显示最后一个异常的堆栈跟踪,可以访问本地和全局。</span></dd><dt><span class="yiyi-st" id="yiyi-160">自动打开堆栈查看器</span></dt><dd><span class="yiyi-st" id="yiyi-161">切换自动打开未处理异常的堆栈查看器。</span></dd></dl></div><div class="section" id="options-menu-shell-and-editor"><h3><span class="yiyi-st" id="yiyi-162">25.5.1.7. </span><span class="yiyi-st" id="yiyi-163">选项菜单(外壳和编辑器)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-164">配置IDLE</span></dt><dd><p class="first"><span class="yiyi-st" id="yiyi-165">打开配置对话框并更改以下项的首选项:字体,缩进,键盘绑定,文本颜色主题,启动窗口和大小,其他帮助源和扩展(见下文)。</span><span class="yiyi-st" id="yiyi-166">在OS X上通过在应用程序菜单中选择首选项打开配置对话框。</span><span class="yiyi-st" id="yiyi-167">要对较旧的IDLE使用新的内建颜色主题IDLE Dark请将其保存为新的自定义主题。</span></p><p class="last"><span class="yiyi-st" id="yiyi-168">非默认用户设置保存在用户主目录中的.idlerc目录中。</span><span class="yiyi-st" id="yiyi-169">坏的用户配置文件导致的问题可以通过编辑或删除.idlerc中的一个或多个文件来解决。</span></p></dd><dt><span class="yiyi-st" id="yiyi-170">代码上下文(切换)(仅限编辑器窗口)</span></dt><dd><span class="yiyi-st" id="yiyi-171">打开编辑窗口顶部的窗格,其中显示了在窗口顶部上方滚动的代码的块上下文。</span></dd></dl></div><div class="section" id="window-menu-shell-and-editor"><h3><span class="yiyi-st" id="yiyi-172">25.5.1.8. </span><span class="yiyi-st" id="yiyi-173">窗口菜单Shell和编辑器</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-174">缩放高度</span></dt><dd><span class="yiyi-st" id="yiyi-175">在正常尺寸和最大高度之间切换窗口。</span><span class="yiyi-st" id="yiyi-176">初始大小默认为40行乘以80个字符除非在“配置IDLE”对话框的“常规”选项卡上进行了更改。</span></dd></dl><p><span class="yiyi-st" id="yiyi-177">此菜单的其余部分列出所有打开的窗口的名称;选择一个将其带到前景(如果必要,将其去模糊化)。</span></p></div><div class="section" id="help-menu-shell-and-editor"><h3><span class="yiyi-st" id="yiyi-178">25.5.1.9. </span><span class="yiyi-st" id="yiyi-179">帮助菜单(外壳和编辑器)</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-180">关于IDLE</span></dt><dd><span class="yiyi-st" id="yiyi-181">显示版本,版权,许可,信用额等。</span></dd><dt><span class="yiyi-st" id="yiyi-182">IDLE帮助</span></dt><dd><span class="yiyi-st" id="yiyi-183">显示IDLE的帮助文件详细说明菜单选项基本编辑和导航以及其他提示。</span></dd><dt><span class="yiyi-st" id="yiyi-184">Python文档</span></dt><dd><span class="yiyi-st" id="yiyi-185">访问本地Python文档如果已安装或启动Web浏览器并打开docs.python.org以显示最新的Python文档。</span></dd><dt><span class="yiyi-st" id="yiyi-186">乌龟演示</span></dt><dd><span class="yiyi-st" id="yiyi-187">使用示例python代码和海龟图来运行turtledemo模块。</span></dd></dl><p><span class="yiyi-st" id="yiyi-188">可以在此处添加其他帮助源在“常规”选项卡下的“配置IDLE”对话框中。</span></p></div><div class="section" id="context-menus"><h3><span class="yiyi-st" id="yiyi-189">25.5.1.10. </span><span class="yiyi-st" id="yiyi-190">上下文菜单</span></h3><p><span class="yiyi-st" id="yiyi-191">通过右键单击窗口在OS X上按住Ctrl键单击打开上下文菜单。</span><span class="yiyi-st" id="yiyi-192">上下文菜单在编辑菜单上也有标准的剪贴板功能。</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-193"></span></dt><dd><span class="yiyi-st" id="yiyi-194">将选择内容复制到系统范围的剪贴板;然后删除选择。</span></dd><dt><span class="yiyi-st" id="yiyi-195">复制</span></dt><dd><span class="yiyi-st" id="yiyi-196">将选择内容复制到系统范围的剪贴板。</span></dd><dt><span class="yiyi-st" id="yiyi-197"></span></dt><dd><span class="yiyi-st" id="yiyi-198">将系统范围剪贴板的内容插入当前窗口。</span></dd></dl><p><span class="yiyi-st" id="yiyi-199">编辑器窗口也有断点功能。</span><span class="yiyi-st" id="yiyi-200">带有断点集的行被特别标记。</span><span class="yiyi-st" id="yiyi-201">断点只有在调试器下运行时才有效。</span><span class="yiyi-st" id="yiyi-202">文件的断点保存在用户的.idlerc目录中。</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-203">设置断点</span></dt><dd><span class="yiyi-st" id="yiyi-204">在当前行上设置断点。</span></dd><dt><span class="yiyi-st" id="yiyi-205">清除断点</span></dt><dd><span class="yiyi-st" id="yiyi-206">清除该行上的断点。</span></dd></dl><p><span class="yiyi-st" id="yiyi-207">Shell和Output窗口具有以下功能。</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-208">转到文件/行</span></dt><dd><span class="yiyi-st" id="yiyi-209">与调试菜单中相同。</span></dd></dl></div></div><div class="section" id="editing-and-navigation"><h2><span class="yiyi-st" id="yiyi-210">25.5.2. </span><span class="yiyi-st" id="yiyi-211">编辑和导航</span></h2><p><span class="yiyi-st" id="yiyi-212">在本节中,'C'指的是Windows和Unix上的<code class="kbd docutils literal"><span class="pre">Control</span></code>以及Mac OSX上的<code class="kbd docutils literal"><span class="pre">Command</span></code>键。</span></p><ul><li><p class="first"><span class="yiyi-st" id="yiyi-213"><code class="kbd docutils literal"><span class="pre">Backspace</span></code>向左删除; <code class="kbd docutils literal"><span class="pre">Del</span></code>向右删除</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-214"><code class="kbd docutils literal"><span class="pre">C-Backspace</span></code> 删除左侧字; <code class="kbd docutils literal"><span class="pre">C-Del</span></code>删除右侧的字词</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-215">箭头键和<code class="kbd docutils literal"><span class="pre"></span> <span class="pre"></span></code> / <code class="kbd docutils literal"><span class="pre"></span> <span class="pre">移动</span></code></span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-216"><code class="kbd docutils literal"><span class="pre">C-LeftArrow</span></code><code class="kbd docutils literal"><span class="pre">C-RightArrow</span></code>按字移动</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-217"><code class="kbd docutils literal"><span class="pre">Home</span></code> / <code class="kbd docutils literal"><span class="pre">End</span></code>转到开始/结束行</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-218"><code class="kbd docutils literal"><span class="pre">C-Home</span></code> / <code class="kbd docutils literal"><span class="pre">C-End</span></code>转到开始/结束文件</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-219">一些有用的Emacs绑定继承自Tcl / Tk</span></p><span class="yiyi-st" id="yiyi-220"> <blockquote> <div><ul class="simple"> <li><code class="kbd docutils literal"><span class="pre">C-a</span></code> beginning of line</li> <li><code class="kbd docutils literal"><span class="pre">C-e</span></code> end of line</li> <li><code class="kbd docutils literal"><span class="pre">C-k</span></code> kill line (but doesnt put it in clipboard)</li> <li><code class="kbd docutils literal"><span class="pre">C-l</span></code> center window around the insertion point</li> <li><code class="kbd docutils literal"><span class="pre">C-b</span></code> go backwards one character without deleting (usually you can also use the cursor key for this)</li> <li><code class="kbd docutils literal"><span class="pre">C-f</span></code> go forward one character without deleting (usually you can also use the cursor key for this)</li> <li><code class="kbd docutils literal"><span class="pre">C-p</span></code> go up one line (usually you can also use the cursor key for this)</li> <li><code class="kbd docutils literal"><span class="pre">C-d</span></code> delete next character</li> </ul> </div></blockquote></span></li></ul><p><span class="yiyi-st" id="yiyi-221">标准按键绑定(如<code class="kbd docutils literal"><span class="pre">C-c</span></code>复制和<code class="kbd docutils literal"><span class="pre">C-v</span></code>粘贴)可能会正常工作。</span><span class="yiyi-st" id="yiyi-222">在“配置IDLE”对话框中选择键绑定。</span></p><div class="section" id="automatic-indentation"><h3><span class="yiyi-st" id="yiyi-223">25.5.2.1. </span><span class="yiyi-st" id="yiyi-224">自动缩进</span></h3><p><span class="yiyi-st" id="yiyi-225">在开启语句之后下一行缩进4个空格在Python Shell窗口中一个选项卡</span><span class="yiyi-st" id="yiyi-226">在某些关键字breakreturn等</span><span class="yiyi-st" id="yiyi-227">下一行是扣除。</span><span class="yiyi-st" id="yiyi-228">在前导缩进中,<code class="kbd docutils literal"><span class="pre">Backspace</span></code>删除最多4个空格如果有</span><span class="yiyi-st" id="yiyi-229"><code class="kbd docutils literal"><span class="pre">Tab</span></code>插入空格在Python Shell窗口的一个选项卡中数量取决于缩进宽度。</span><span class="yiyi-st" id="yiyi-230">由于Tcl / Tk限制当前标签限制为四个空格。</span></p><p><span class="yiyi-st" id="yiyi-231">另请参阅编辑菜单中的缩进/缩进区域命令。</span></p></div><div class="section" id="completions"><h3><span class="yiyi-st" id="yiyi-232">25.5.2.2. </span><span class="yiyi-st" id="yiyi-233">完井</span></h3><p><span class="yiyi-st" id="yiyi-234">为内建和用户定义的类的函数,类和属性提供完成。</span><span class="yiyi-st" id="yiyi-235">还为文件名提供了完整性。</span></p><p><span class="yiyi-st" id="yiyi-236">在“。”或在字符串中键入os.sep之后AutoCompleteWindowACW将在预定义的延迟默认值为两秒后打开。</span><span class="yiyi-st" id="yiyi-237">如果在其中一个字符加上零个或多个其他字符之后键入一个选项卡如果找到可能的延续ACW将立即打开。</span></p><p><span class="yiyi-st" id="yiyi-238">如果输入的字符只有一个可能的完成,则<code class="kbd docutils literal"><span class="pre">Tab</span></code>将提供该完成而不打开ACW。</span></p><p><span class="yiyi-st" id="yiyi-239">“显示完成”将强制打开完成窗口,默认情况下,<code class="kbd docutils literal"><span class="pre">C-space</span></code>将打开完成窗口。</span><span class="yiyi-st" id="yiyi-240">在空字符串中,这将包含当前目录中的文件。</span><span class="yiyi-st" id="yiyi-241">在空行上,它将包含当前名称空间中的内建和用户定义的函数和类,以及所有导入的模块。</span><span class="yiyi-st" id="yiyi-242">如果输入了一些字符ACW将尝试更具体。</span></p><p><span class="yiyi-st" id="yiyi-243">如果输入了字符串ACW选择将跳转到与这些字符最匹配的条目。</span><span class="yiyi-st" id="yiyi-244">输入<code class="kbd docutils literal"><span class="pre">tab</span></code>将导致在编辑器窗口或命令行管理程序中输入最长的非歧义匹配。</span><span class="yiyi-st" id="yiyi-245">一行中的两个<code class="kbd docutils literal"><span class="pre">tab</span></code>将提供当前ACW选择将返回或双击。</span><span class="yiyi-st" id="yiyi-246">光标键Page Up / Down鼠标选择和滚轮都在ACW上操作。</span></p><p><span class="yiyi-st" id="yiyi-247">“隐藏”属性可以通过在“。”之后键入隐藏名称的开头来访问。</span><span class="yiyi-st" id="yiyi-248">'_'。</span><span class="yiyi-st" id="yiyi-249">这允许访问设置了<code class="docutils literal"><span class="pre">__all__</span></code>的模块,或者访问类私有属性的模块。</span></p><p><span class="yiyi-st" id="yiyi-250">完成和“Expand Word”工具可以节省大量的输入</span></p><p><span class="yiyi-st" id="yiyi-251">完成目前仅限于命名空间中的完成。</span><span class="yiyi-st" id="yiyi-252">将不能找到不通过<code class="docutils literal"><span class="pre">__main__</span></code><a class="reference internal" href="sys.html#sys.modules" title="sys.modules"><code class="xref py py-data docutils literal"><span class="pre">sys.modules</span></code></a>的编辑器窗口中的名称。</span><span class="yiyi-st" id="yiyi-253">使用导入运行模块一次,以纠正这种情况。</span><span class="yiyi-st" id="yiyi-254">注意IDLE本身在sys.modules中放置了很多模块所以默认情况下可以找到很多模块。</span><span class="yiyi-st" id="yiyi-255">re模块。</span></p><p><span class="yiyi-st" id="yiyi-256">如果你不喜欢ACW弹出未被禁止只需延长时间或禁用扩展。</span></p></div><div class="section" id="calltips"><h3><span class="yiyi-st" id="yiyi-257">25.5.2.3. </span><span class="yiyi-st" id="yiyi-258">Calltips </span></h3><p><span class="yiyi-st" id="yiyi-259">当在<em>可访问</em>函数的名称后面键入<code class="kbd docutils literal"><span class="pre">(</span></code>)时,会显示一个调用提示。</span><span class="yiyi-st" id="yiyi-260">名称表达式可以包括点和下标。</span><span class="yiyi-st" id="yiyi-261">调用提示保持,直到它被点击,光标移出参数区域,或<code class="kbd docutils literal"><span class="pre">)</span></code>被键入。</span><span class="yiyi-st" id="yiyi-262">当光标位于定义的参数部分时,菜单或快捷方式将显示一个调用提示。</span></p><p><span class="yiyi-st" id="yiyi-263">calltip由函数声明和docstring的第一行组成。</span><span class="yiyi-st" id="yiyi-264">对于没有可访问声明的内置,调用提示包括第五行或第一个空白行上的所有行。</span><span class="yiyi-st" id="yiyi-265">这些详细信息可能会更改。</span></p><p><span class="yiyi-st" id="yiyi-266"><em>可访问</em>函数的集合取决于导入到用户进程中的模块包括Idle自身导入的模块以及自上次重新启动以来运行的定义。</span></p><p><span class="yiyi-st" id="yiyi-267">例如重新启动Shell并输入<code class="docutils literal"><span class="pre">itertools.count(</span></code></span><span class="yiyi-st" id="yiyi-268">出现调用提示因为Idle将itertools导入用户进程以供自己使用。</span><span class="yiyi-st" id="yiyi-269">(这可能改变。)</span><span class="yiyi-st" id="yiyi-270">输入<code class="docutils literal"><span class="pre">turtle.write(</span></code>),不显示任何内容。</span><span class="yiyi-st" id="yiyi-271">空闲不导入海龟。</span><span class="yiyi-st" id="yiyi-272">菜单或快捷方式也什么也不做。</span><span class="yiyi-st" id="yiyi-273">输入<code class="docutils literal"><span class="pre">import</span> <span class="pre">turtle</span></code>,然后输入<code class="docutils literal"><span class="pre">turtle.write(</span></code></span></p><p><span class="yiyi-st" id="yiyi-274">在编辑器中import语句在运行文件之前没有任何效果。</span><span class="yiyi-st" id="yiyi-275">可能想在顶部写入import语句后运行文件或在编辑之前立即运行现有文件。</span></p></div><div class="section" id="python-shell-window"><h3><span class="yiyi-st" id="yiyi-276">25.5.2.4. </span><span class="yiyi-st" id="yiyi-277">Python Shell窗口</span></h3><ul><li><p class="first"><span class="yiyi-st" id="yiyi-278"><code class="kbd docutils literal"><span class="pre">C-c</span></code>中断执行命令</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-279"><code class="kbd docutils literal"><span class="pre">C-d</span></code>发送文件结束;如果在<code class="docutils literal"><span class="pre">&gt;&gt;&gt;</span></code>提示处键入,则关闭窗口</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-280"><code class="kbd docutils literal"><span class="pre">Alt-/</span></code>(展开单词)也有助于减少打字</span></p><p><span class="yiyi-st" id="yiyi-281">命令历史</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-282"><code class="kbd docutils literal"><span class="pre">Alt-p</span></code>检索与您键入的命令匹配的上一个命令。</span><span class="yiyi-st" id="yiyi-283">在OS X上使用<code class="kbd docutils literal"><span class="pre">C-p</span></code></span></li><li><span class="yiyi-st" id="yiyi-284"><code class="kbd docutils literal"><span class="pre">Alt-n</span></code>检索下一个。</span><span class="yiyi-st" id="yiyi-285">在OS X上使用<code class="kbd docutils literal"><span class="pre">C-n</span></code></span></li><li><span class="yiyi-st" id="yiyi-286"><code class="kbd docutils literal"><span class="pre">Return</span></code>,而任何上一个命令检索该命令</span></li></ul></li></ul></div><div class="section" id="text-colors"><h3><span class="yiyi-st" id="yiyi-287">25.5.2.5. </span><span class="yiyi-st" id="yiyi-288">文字颜色</span></h3><p><span class="yiyi-st" id="yiyi-289">空白默认为白色文本上的黑色,但颜色具有特殊含义的文本。</span><span class="yiyi-st" id="yiyi-290">对于shell这些是shell输出shell错误用户输出和用户错误。</span><span class="yiyi-st" id="yiyi-291">对于Python代码在shell提示符或编辑器中这些是关键字内置类和函数名<code class="docutils literal"><span class="pre">class</span></code><code class="docutils literal"><span class="pre">def</span></code>后面的名称,字符串和注释。</span><span class="yiyi-st" id="yiyi-292">对于任何文本窗口,这些是光标(如果存在),找到的文本(如果可能)和选定的文本。</span></p><p><span class="yiyi-st" id="yiyi-293">文本着色在背景中完成,所以未着色的文本偶尔可见。</span><span class="yiyi-st" id="yiyi-294">要更改颜色方案请使用“配置IDLE”对话框的“突出显示”选项卡。</span><span class="yiyi-st" id="yiyi-295">编辑器中调试器断点行的标记和弹出窗口和对话框中的文本不是用户可配置的。</span></p></div></div><div class="section" id="startup-and-code-execution"><h2><span class="yiyi-st" id="yiyi-296">25.5.3. </span><span class="yiyi-st" id="yiyi-297">启动和代码执行</span></h2><p><span class="yiyi-st" id="yiyi-298">使用<code class="docutils literal"><span class="pre">-s</span></code>选项启动时IDLE将执行环境变量<span class="target" id="index-5"></span> <code class="xref std std-envvar docutils literal"><span class="pre">IDLESTARTUP</span></code><span class="target" id="index-6"></span> <a class="reference internal" href="../using/cmdline.html#envvar-PYTHONSTARTUP"><code class="xref std std-envvar docutils literal"><span class="pre">PYTHONSTARTUP</span></code></a></span><span class="yiyi-st" id="yiyi-299">IDLE首先检查<code class="docutils literal"><span class="pre">IDLESTARTUP</span></code>;如果出现<code class="docutils literal"><span class="pre">IDLESTARTUP</span></code>,则引用的文件将运行。</span><span class="yiyi-st" id="yiyi-300">如果<code class="docutils literal"><span class="pre">IDLESTARTUP</span></code>不存在IDLE将检查<code class="docutils literal"><span class="pre">PYTHONSTARTUP</span></code></span><span class="yiyi-st" id="yiyi-301">这些环境变量引用的文件是存储从IDLE shell中频繁使用的函数或执行import语句以导入公共模块的便利位置。</span></p><p><span class="yiyi-st" id="yiyi-302">此外,<code class="docutils literal"><span class="pre">Tk</span></code>还会加载启动文件(如果存在)。</span><span class="yiyi-st" id="yiyi-303">注意无条件地加载Tk文件。</span><span class="yiyi-st" id="yiyi-304">此附加文件为<code class="docutils literal"><span class="pre">.Idle.py</span></code>,并在用户的主目录中找到。</span><span class="yiyi-st" id="yiyi-305">此文件中的语句将在Tk命名空间中执行因此此文件对于从IDLE的Python shell导入要使用的函数不是有用的。</span></p><div class="section" id="command-line-usage"><h3><span class="yiyi-st" id="yiyi-306">25.5.3.1. </span><span class="yiyi-st" id="yiyi-307">命令行用法</span></h3><div class="highlight-none"><div class="highlight"><pre><span></span>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 combinatios 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)
</pre></div></div><p><span class="yiyi-st" id="yiyi-308">如果有参数:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-309">If <code class="docutils literal"><span class="pre">-</span></code>, <code class="docutils literal"><span class="pre">-c</span></code>, or <code class="docutils literal"><span class="pre">r</span></code> is used, all arguments are placed in <code class="docutils literal"><span class="pre">sys.argv[1:...]</span></code> and <code class="docutils literal"><span class="pre">sys.argv[0]</span></code> is set to <code class="docutils literal"><span class="pre">''</span></code>, <code class="docutils literal"><span class="pre">'-c'</span></code>, or <code class="docutils literal"><span class="pre">'-r'</span></code>. </span><span class="yiyi-st" id="yiyi-310">不打开编辑器窗口,即使它是“选项”对话框中的默认设置。</span></li><li><span class="yiyi-st" id="yiyi-311">否则,参数是打开以供编辑的文件,而<code class="docutils literal"><span class="pre">sys.argv</span></code>反映传递给IDLE本身的参数。</span></li></ul></div><div class="section" id="idle-console-differences"><h3><span class="yiyi-st" id="yiyi-312">25.5.3.2. </span><span class="yiyi-st" id="yiyi-313">空闲 - 控制台差异</span></h3><p><span class="yiyi-st" id="yiyi-314">尽可能地使用IDLE执行Python代码的结果与在控制台窗口中执行相同的代码相同。</span><span class="yiyi-st" id="yiyi-315">但是,不同的接口和操作偶尔会影响可见的结果。</span><span class="yiyi-st" id="yiyi-316">对于实例,<code class="docutils literal"><span class="pre">sys.modules</span></code>以更多条目开头。</span></p><p><span class="yiyi-st" id="yiyi-317">IDLE还用从Shell窗口获取输入和将输出发送到Shell窗口的对象替换<code class="docutils literal"><span class="pre">sys.stdin</span></code><code class="docutils literal"><span class="pre">sys.stdout</span></code><code class="docutils literal"><span class="pre">sys.stderr</span></code></span><span class="yiyi-st" id="yiyi-318">当这个窗口有焦点时,它控制键盘和屏幕。</span><span class="yiyi-st" id="yiyi-319">这通常是透明的,但直接访问键盘和屏幕的功能将不起作用。</span><span class="yiyi-st" id="yiyi-320">If <code class="docutils literal"><span class="pre">sys</span></code> is reset with <code class="docutils literal"><span class="pre">importlib.reload(sys)</span></code>, IDLEs changes are lost and things li ke <code class="docutils literal"><span class="pre">input</span></code>, <code class="docutils literal"><span class="pre">raw_input</span></code>, and <code class="docutils literal"><span class="pre">print</span></code> will not work correctly.</span></p><p><span class="yiyi-st" id="yiyi-321">使用IDLE的Shell一个进入编辑并召回完整的语句。</span><span class="yiyi-st" id="yiyi-322">有些控制台一次只能使用一条物理线路。</span></p></div><div class="section" id="running-without-a-subprocess"><h3><span class="yiyi-st" id="yiyi-323">25.5.3.3. </span><span class="yiyi-st" id="yiyi-324">没有子进程运行</span></h3><p><span class="yiyi-st" id="yiyi-325">默认情况下IDLE通过套接字在单独的子进程中执行用户代码该套接字使用内部回送接口。</span><span class="yiyi-st" id="yiyi-326">此连接不是外部可见的并且没有数据发送到Internet或从Internet接收。</span><span class="yiyi-st" id="yiyi-327">如果防火墙软件反正,你可以忽略它。</span></p><p><span class="yiyi-st" id="yiyi-328">如果尝试使套接字连接失败Idle将通知您。</span><span class="yiyi-st" id="yiyi-329">这种故障有时是暂时的,但如果是持久的,问题可能是防火墙阻塞连接或特定系统的配置错误。</span><span class="yiyi-st" id="yiyi-330">直到问题解决,可以使用-n命令行开关运行Idle。</span></p><p><span class="yiyi-st" id="yiyi-331">如果IDLE使用-n命令行开关启动它将在单个进程中运行并且不会创建运行RPC Python执行服务器的子进程。</span><span class="yiyi-st" id="yiyi-332">如果Python无法在您的平台上创建子进程或RPC套接字接口这将非常有用。</span><span class="yiyi-st" id="yiyi-333">但是在此模式下用户代码不与IDLE本身隔离。</span><span class="yiyi-st" id="yiyi-334">此外,当选择运行/运行模块F5不会重新启动环境。</span><span class="yiyi-st" id="yiyi-335">如果您的代码已被修改,您必须重新载入()受影响的模块,并重新导入任何特定项目(例如</span><span class="yiyi-st" id="yiyi-336">从foo import baz如果更改生效。</span><span class="yiyi-st" id="yiyi-337">由于这些原因如果可能最好使用默认子进程运行IDLE。</span></p><div class="deprecated"><p><span class="yiyi-st" id="yiyi-338"><span class="versionmodified">自3.4版起已弃用。</span></span></p></div></div></div><div class="section" id="help-and-preferences"><h2><span class="yiyi-st" id="yiyi-339">25.5.4. </span><span class="yiyi-st" id="yiyi-340">帮助和首选项</span></h2><div class="section" id="additional-help-sources"><h3><span class="yiyi-st" id="yiyi-341">25.5.4.1. </span><span class="yiyi-st" id="yiyi-342">其他帮助来源</span></h3><p><span class="yiyi-st" id="yiyi-343">IDLE包括一个称为“Python文档”的帮助菜单条目将打开包含教程的广泛帮助源可从docs.python.org获取。</span><span class="yiyi-st" id="yiyi-344">所选的URL可以随时使用“配置IDLE”对话框从帮助菜单中添加或删除。</span><span class="yiyi-st" id="yiyi-345">有关详细信息请参阅IDLE帮助菜单中的IDLE帮助选项。</span></p></div><div class="section" id="setting-preferences"><h3><span class="yiyi-st" id="yiyi-346">25.5.4.2. </span><span class="yiyi-st" id="yiyi-347">设置首选项</span></h3><p><span class="yiyi-st" id="yiyi-348">可以通过选项菜单上的配置IDLE更改字体首选项突出显示键和常规首选项。</span><span class="yiyi-st" id="yiyi-349">键可以由用户定义; IDLE附带四个内置的密钥集。</span><span class="yiyi-st" id="yiyi-350">此外用户可以在“配置IDLE”对话框的“键”选项卡下创建自定义键集。</span></p></div><div class="section" id="extensions"><h3><span class="yiyi-st" id="yiyi-351">25.5.4.3. </span><span class="yiyi-st" id="yiyi-352">扩展程序</span></h3><p><span class="yiyi-st" id="yiyi-353">IDLE包含扩展设施。</span><span class="yiyi-st" id="yiyi-354">扩展的扩展可以使用配置扩展进行更改。</span><span class="yiyi-st" id="yiyi-355">有关更多信息请参阅idlelib目录中config-extensions.def的开头。</span><span class="yiyi-st" id="yiyi-356">默认扩展名当前为:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-357">FormatParagraph</span></li><li><span class="yiyi-st" id="yiyi-358">自动展开</span></li><li><span class="yiyi-st" id="yiyi-359">ZoomHeight</span></li><li><span class="yiyi-st" id="yiyi-360">脚本绑定</span></li><li><span class="yiyi-st" id="yiyi-361">呼叫提示</span></li><li><span class="yiyi-st" id="yiyi-362">ParenMatch</span></li><li><span class="yiyi-st" id="yiyi-363">自动完成</span></li><li><span class="yiyi-st" id="yiyi-364">CodeContext</span></li><li><span class="yiyi-st" id="yiyi-365">RstripExtension</span></li></ul></div></div></div></div>