uTools-Manuals/docs/python/turtle.html
2019-04-21 11:50:48 +08:00

544 lines
247 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="module-turtle"><h1><span class="yiyi-st" id="yiyi-10">24.1. <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle(乌龟)</span></code></a> — Turtle graphics(图形)</span></h1><p><span class="yiyi-st" id="yiyi-11"><strong>源代码:</strong> <a class="reference external" href="https://hg.python.org/cpython/file/3.5/Lib/turtle.py">Lib / turtle.py</a></span></p><div class="section" id="introduction"><h2><span class="yiyi-st" id="yiyi-12">24.1.1. </span><span class="yiyi-st" id="yiyi-13">简介</span></h2><p><span class="yiyi-st" id="yiyi-14">乌龟图形是一个不错的方式来为孩子们介绍编程。</span><span class="yiyi-st" id="yiyi-15">它是Wally Feurzig和Seymour Papert在1966年开发的原始Logo编程语言的一部分。</span></p><p><span class="yiyi-st" id="yiyi-16">在xy平面上想象有一只海龟机器人位于00位置。</span><span class="yiyi-st" id="yiyi-17"><code class="docutils literal"><span class="pre">import</span> <span class="pre">turtle</span></code>之后,输入命令<code class="docutils literal"><span class="pre">turtle.forward15</span></code>,然后它就在屏幕上动起来了!</span><span class="yiyi-st" id="yiyi-18">当它移动时会沿着其所面向的方向画出一条长15像素的直线。</span><span class="yiyi-st" id="yiyi-19">输入命令<code class="docutils literal"><span class="pre">turtle.right(25)</span></code>然后它就会原地顺时针转25度。</span></p><div class="sidebar"><p class="first sidebar-title"><span class="yiyi-st" id="yiyi-20">Turtle star(星)</span></p><p><span class="yiyi-st" id="yiyi-21">海龟可以重复简单动作来绘制复杂的图形。</span></p><div class="last highlight-python3"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">turtle</span> <span class="k">import</span> <span class="o">*</span>
<span class="n">color</span><span class="p">(</span><span class="s1">'red'</span><span class="p">,</span> <span class="s1">'yellow'</span><span class="p">)</span>
<span class="n">begin_fill</span><span class="p">()</span>
<span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
<span class="n">forward</span><span class="p">(</span><span class="mi">200</span><span class="p">)</span>
<span class="n">left</span><span class="p">(</span><span class="mi">170</span><span class="p">)</span>
<span class="k">if</span> <span class="nb">abs</span><span class="p">(</span><span class="n">pos</span><span class="p">())</span> <span class="o">&lt;</span> <span class="mi">1</span><span class="p">:</span>
<span class="k">break</span>
<span class="n">end_fill</span><span class="p">()</span>
<span class="n">done</span><span class="p">()</span>
</pre></div></div></div><p><span class="yiyi-st" id="yiyi-22">通过将这些类似的命令组合在一起,复杂的形状和图片便可以被轻松的绘制出来。</span></p><p><span class="yiyi-st" id="yiyi-23"><a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a>模块是Python 2.5标准版以来同名模块的扩展版本。</span></p><p><span class="yiyi-st" id="yiyi-24">既保持了原模块的优点几乎100兼容旧版。</span><span class="yiyi-st" id="yiyi-25">当使用该模块时在IDLE中使用<code class="docutils literal"><span class="pre">-n</span></code>开关能让初学者很容易使用到所含的全部命令,类和交互方法。</span></p><p><span class="yiyi-st" id="yiyi-26">turtle模块基本类型同时支持面向对象和面向过程两种方式。</span><span class="yiyi-st" id="yiyi-27">由于它使用<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>作为底层图形算法所以它需要一个安装了Tk的Python版本支持。</span></p><p><span class="yiyi-st" id="yiyi-28">The object-oriented interface uses essentially two+two classes:</span></p><ol class="arabic"><li><p class="first"><span class="yiyi-st" id="yiyi-29"><a class="reference internal" href="#turtle.TurtleScreen" title="turtle.TurtleScreen"><code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code></a>类将图形窗口定义为“绘图海龟”的“游乐场”。</span><span class="yiyi-st" id="yiyi-30">其构造函数需要<code class="xref py py-class docutils literal"><span class="pre">tkinter.Canvas</span></code><a class="reference internal" href="#turtle.ScrolledCanvas" title="turtle.ScrolledCanvas"><code class="xref py py-class docutils literal"><span class="pre">ScrolledCanvas</span></code></a>作为参数。</span><span class="yiyi-st" id="yiyi-31"><a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a>作为某些应用程序的一部分时,应使用此类。</span></p><p><span class="yiyi-st" id="yiyi-32">函数<a class="reference internal" href="#turtle.Screen" title="turtle.Screen"><code class="xref py py-func docutils literal"><span class="pre">Screen()</span></code></a>会返回一个<a class="reference internal" href="#turtle.TurtleScreen" title="turtle.TurtleScreen"><code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code></a>子类的单例对象。</span><span class="yiyi-st" id="yiyi-33"><a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a>用作执行图形的独立工具时,应使用此函数。</span><span class="yiyi-st" id="yiyi-34">作为单例对象,它的类继承是无效的。</span></p><p><span class="yiyi-st" id="yiyi-35">TurtleScreen / Screen的所有方法也作为函数存在</span><span class="yiyi-st" id="yiyi-36">作为面向过程的接口的一部分。</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-37"><a class="reference internal" href="#turtle.RawTurtle" title="turtle.RawTurtle"><code class="xref py py-class docutils literal"><span class="pre">RawTurtle</span></code></a>(别名:<a class="reference internal" href="#turtle.RawPen" title="turtle.RawPen"><code class="xref py py-class docutils literal"><span class="pre">RawPen</span></code></a>)定义了在<a class="reference internal" href="#turtle.TurtleScreen" title="turtle.TurtleScreen"><code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code></a>上绘制的Turtle对象。</span><span class="yiyi-st" id="yiyi-38">它的构造函数需要一个CanvasScrolledCanvas或者TurtleScreen作为参数来让RawTurtle对象知道在哪里绘制。</span></p><p><span class="yiyi-st" id="yiyi-39">Derived from RawTurtle is the subclass <a class="reference internal" href="#turtle.Turtle" title="turtle.Turtle"><code class="xref py py-class docutils literal"><span class="pre">Turtle</span></code></a> (alias: <code class="xref py py-class docutils literal"><span class="pre">Pen</span></code>), which draws on “the” <a class="reference internal" href="#turtle.Screen" title="turtle.Screen"><code class="xref py py-class docutils literal"><span class="pre">Screen</span></code></a> instance which is automatically created, if not already present.</span></p><p><span class="yiyi-st" id="yiyi-40">RawTurtle / Turtle的所有方法也作为函数存在</span><span class="yiyi-st" id="yiyi-41">面向过程的接口的一部分。</span></p></li></ol><p><span class="yiyi-st" id="yiyi-42">过程接口提供从类<a class="reference internal" href="#turtle.Screen" title="turtle.Screen"><code class="xref py py-class docutils literal"><span class="pre">Screen</span></code></a><a class="reference internal" href="#turtle.Turtle" title="turtle.Turtle"><code class="xref py py-class docutils literal"><span class="pre">Turtle</span></code></a>的方法派生的函数。</span><span class="yiyi-st" id="yiyi-43">它们具有与相应方法相同的名称。</span><span class="yiyi-st" id="yiyi-44">每当调用从Screen方法派生的函数时将自动创建Screen对象。</span><span class="yiyi-st" id="yiyi-45">每当调用来自Turtle方法的任何函数时将自动创建一个未命名的turtle对象。</span></p><p><span class="yiyi-st" id="yiyi-46">要在一个屏幕上使用多个海龟,必须使用面向对象的接口。</span></p><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-47">注意</span></p><p class="last"><span class="yiyi-st" id="yiyi-48">在下面的文档中给出了函数的参数列表。</span><span class="yiyi-st" id="yiyi-49">当然,方法有额外的第一个参数<em>self</em>,在这里省略。</span></p></div></div><div class="section" id="overview-of-available-turtle-and-screen-methods"><h2><span class="yiyi-st" id="yiyi-50">24.1.2. </span><span class="yiyi-st" id="yiyi-51">可用的Turtle and Screen的方法</span></h2><div class="section" id="turtle-methods"><h3><span class="yiyi-st" id="yiyi-52">24.1.2.1. </span><span class="yiyi-st" id="yiyi-53">Turtle 方法</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-54">Turtle的运动</span></dt><dd><dl class="first last docutils"><dt><span class="yiyi-st" id="yiyi-55">移动和绘制</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-56"><a class="reference internal" href="#turtle.forward" title="turtle.forward"><code class="xref py py-func docutils literal"><span class="pre">forward()</span></code></a> | <a class="reference internal" href="#turtle.fd" title="turtle.fd"><code class="xref py py-func docutils literal"><span class="pre">fd()</span></code></a> 向前</span></div><div class="line"><span class="yiyi-st" id="yiyi-57"><a class="reference internal" href="#turtle.backward" title="turtle.backward"><code class="xref py py-func docutils literal"><span class="pre">backward()</span></code></a> | <a class="reference internal" href="#turtle.bk" title="turtle.bk"><code class="xref py py-func docutils literal"><span class="pre">bk()</span></code></a> | <a class="reference internal" href="#turtle.back" title="turtle.back"><code class="xref py py-func docutils literal"><span class="pre">back()</span></code></a> 向后</span></div><div class="line"><span class="yiyi-st" id="yiyi-58"><a class="reference internal" href="#turtle.right" title="turtle.right"><code class="xref py py-func docutils literal"><span class="pre">right()</span></code></a> | <a class="reference internal" href="#turtle.rt" title="turtle.rt"><code class="xref py py-func docutils literal"><span class="pre">rt()</span></code></a> 向右</span></div><div class="line"><span class="yiyi-st" id="yiyi-59"><a class="reference internal" href="#turtle.left" title="turtle.left"><code class="xref py py-func docutils literal"><span class="pre">left()</span></code></a> | <a class="reference internal" href="#turtle.lt" title="turtle.lt"><code class="xref py py-func docutils literal"><span class="pre">lt()</span></code></a> 向左</span></div><div class="line"><span class="yiyi-st" id="yiyi-60"><a class="reference internal" href="#turtle.goto" title="turtle.goto"><code class="xref py py-func docutils literal"><span class="pre">goto()</span></code></a> | <a class="reference internal" href="#turtle.setpos" title="turtle.setpos"><code class="xref py py-func docutils literal"><span class="pre">setpos()</span></code></a> | <a class="reference internal" href="#turtle.setposition" title="turtle.setposition"><code class="xref py py-func docutils literal"><span class="pre">setposition()</span></code></a> 设定坐标</span></div><div class="line"><span class="yiyi-st" id="yiyi-61"><a class="reference internal" href="#turtle.setx" title="turtle.setx"><code class="xref py py-func docutils literal"><span class="pre">setx() 设定x坐标</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-62"><a class="reference internal" href="#turtle.sety" title="turtle.sety"><code class="xref py py-func docutils literal"><span class="pre">sety()</span></code></a> 设定y坐标</span></div><div class="line"><span class="yiyi-st" id="yiyi-63"><a class="reference internal" href="#turtle.setheading" title="turtle.setheading"><code class="xref py py-func docutils literal"><span class="pre">setheading()</span></code></a> | <a class="reference internal" href="#turtle.seth" title="turtle.seth"><code class="xref py py-func docutils literal"><span class="pre">seth()</span></code></a> 设定朝向</span></div><div class="line"><span class="yiyi-st" id="yiyi-64"><a class="reference internal" href="#turtle.home" title="turtle.home"><code class="xref py py-func docutils literal"><span class="pre">home()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-65"><a class="reference internal" href="#turtle.circle" title="turtle.circle"><code class="xref py py-func docutils literal"><span class="pre">circle()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-66"><a class="reference internal" href="#turtle.dot" title="turtle.dot"><code class="xref py py-func docutils literal"><span class="pre">dot()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-67"><a class="reference internal" href="#turtle.stamp" title="turtle.stamp"><code class="xref py py-func docutils literal"><span class="pre">stamp()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-68"><a class="reference internal" href="#turtle.clearstamp" title="turtle.clearstamp"><code class="xref py py-func docutils literal"><span class="pre">clearstamp()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-69"><a class="reference internal" href="#turtle.clearstamps" title="turtle.clearstamps"><code class="xref py py-func docutils literal"><span class="pre">clearstamps()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-70"><a class="reference internal" href="#turtle.undo" title="turtle.undo"><code class="xref py py-func docutils literal"><span class="pre">undo()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-71"><a class="reference internal" href="#turtle.speed" title="turtle.speed"><code class="xref py py-func docutils literal"><span class="pre">speed()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-72">Tell Turtles state</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-73"><a class="reference internal" href="#turtle.position" title="turtle.position"><code class="xref py py-func docutils literal"><span class="pre">position()</span></code></a> | <a class="reference internal" href="#turtle.pos" title="turtle.pos"><code class="xref py py-func docutils literal"><span class="pre">pos()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-74"><a class="reference internal" href="#turtle.towards" title="turtle.towards"><code class="xref py py-func docutils literal"><span class="pre">towards()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-75"><a class="reference internal" href="#turtle.xcor" title="turtle.xcor"><code class="xref py py-func docutils literal"><span class="pre">xcor()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-76"><a class="reference internal" href="#turtle.ycor" title="turtle.ycor"><code class="xref py py-func docutils literal"><span class="pre">ycor()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-77"><a class="reference internal" href="#turtle.heading" title="turtle.heading"><code class="xref py py-func docutils literal"><span class="pre">heading()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-78"><a class="reference internal" href="#turtle.distance" title="turtle.distance"><code class="xref py py-func docutils literal"><span class="pre">distance()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-79">Setting and measurement</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-80"><a class="reference internal" href="#turtle.degrees" title="turtle.degrees"><code class="xref py py-func docutils literal"><span class="pre">degrees()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-81"><a class="reference internal" href="#turtle.radians" title="turtle.radians"><code class="xref py py-func docutils literal"><span class="pre">radians()</span></code></a></span></div></div></dd></dl></dd><dt><span class="yiyi-st" id="yiyi-82">Pen control</span></dt><dd><dl class="first last docutils"><dt><span class="yiyi-st" id="yiyi-83">Drawing state</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-84"><a class="reference internal" href="#turtle.pendown" title="turtle.pendown"><code class="xref py py-func docutils literal"><span class="pre">pendown()</span></code></a> | <a class="reference internal" href="#turtle.pd" title="turtle.pd"><code class="xref py py-func docutils literal"><span class="pre">pd()</span></code></a> | <a class="reference internal" href="#turtle.down" title="turtle.down"><code class="xref py py-func docutils literal"><span class="pre">down()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-85"><a class="reference internal" href="#turtle.penup" title="turtle.penup"><code class="xref py py-func docutils literal"><span class="pre">penup()</span></code></a> | <a class="reference internal" href="#turtle.pu" title="turtle.pu"><code class="xref py py-func docutils literal"><span class="pre">pu()</span></code></a> | <a class="reference internal" href="#turtle.up" title="turtle.up"><code class="xref py py-func docutils literal"><span class="pre">up()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-86"><a class="reference internal" href="#turtle.pensize" title="turtle.pensize"><code class="xref py py-func docutils literal"><span class="pre">pensize()</span></code></a> | <a class="reference internal" href="#turtle.width" title="turtle.width"><code class="xref py py-func docutils literal"><span class="pre">width()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-87"><a class="reference internal" href="#turtle.pen" title="turtle.pen"><code class="xref py py-func docutils literal"><span class="pre">pen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-88"><a class="reference internal" href="#turtle.isdown" title="turtle.isdown"><code class="xref py py-func docutils literal"><span class="pre">isdown()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-89">颜色控制</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-90"><a class="reference internal" href="#turtle.color" title="turtle.color"><code class="xref py py-func docutils literal"><span class="pre">color()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-91"><a class="reference internal" href="#turtle.pencolor" title="turtle.pencolor"><code class="xref py py-func docutils literal"><span class="pre">pencolor()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-92"><a class="reference internal" href="#turtle.fillcolor" title="turtle.fillcolor"><code class="xref py py-func docutils literal"><span class="pre">fillcolor()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-93">Filling</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-94"><a class="reference internal" href="#turtle.filling" title="turtle.filling"><code class="xref py py-func docutils literal"><span class="pre">filling()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-95"><a class="reference internal" href="#turtle.begin_fill" title="turtle.begin_fill"><code class="xref py py-func docutils literal"><span class="pre">begin_fill()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-96"><a class="reference internal" href="#turtle.end_fill" title="turtle.end_fill"><code class="xref py py-func docutils literal"><span class="pre">end_fill()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-97">More drawing control</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-98"><a class="reference internal" href="#turtle.reset" title="turtle.reset"><code class="xref py py-func docutils literal"><span class="pre">reset()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-99"><a class="reference internal" href="#turtle.clear" title="turtle.clear"><code class="xref py py-func docutils literal"><span class="pre">clear()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-100"><a class="reference internal" href="#turtle.write" title="turtle.write"><code class="xref py py-func docutils literal"><span class="pre">write()</span></code></a></span></div></div></dd></dl></dd><dt><span class="yiyi-st" id="yiyi-101">Turtle state</span></dt><dd><dl class="first last docutils"><dt><span class="yiyi-st" id="yiyi-102">Visibility</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-103"><a class="reference internal" href="#turtle.showturtle" title="turtle.showturtle"><code class="xref py py-func docutils literal"><span class="pre">showturtle()</span></code></a> | <a class="reference internal" href="#turtle.st" title="turtle.st"><code class="xref py py-func docutils literal"><span class="pre">st()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-104"><a class="reference internal" href="#turtle.hideturtle" title="turtle.hideturtle"><code class="xref py py-func docutils literal"><span class="pre">hideturtle()</span></code></a> | <a class="reference internal" href="#turtle.ht" title="turtle.ht"><code class="xref py py-func docutils literal"><span class="pre">ht()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-105"><a class="reference internal" href="#turtle.isvisible" title="turtle.isvisible"><code class="xref py py-func docutils literal"><span class="pre">isvisible()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-106">Appearance</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-107"><a class="reference internal" href="#turtle.shape" title="turtle.shape"><code class="xref py py-func docutils literal"><span class="pre">shape()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-108"><a class="reference internal" href="#turtle.resizemode" title="turtle.resizemode"><code class="xref py py-func docutils literal"><span class="pre">resizemode()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-109"><a class="reference internal" href="#turtle.shapesize" title="turtle.shapesize"><code class="xref py py-func docutils literal"><span class="pre">shapesize()</span></code></a> | <a class="reference internal" href="#turtle.turtlesize" title="turtle.turtlesize"><code class="xref py py-func docutils literal"><span class="pre">turtlesize()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-110"><a class="reference internal" href="#turtle.shearfactor" title="turtle.shearfactor"><code class="xref py py-func docutils literal"><span class="pre">shearfactor()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-111"><a class="reference internal" href="#turtle.settiltangle" title="turtle.settiltangle"><code class="xref py py-func docutils literal"><span class="pre">settiltangle()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-112"><a class="reference internal" href="#turtle.tiltangle" title="turtle.tiltangle"><code class="xref py py-func docutils literal"><span class="pre">tiltangle()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-113"><a class="reference internal" href="#turtle.tilt" title="turtle.tilt"><code class="xref py py-func docutils literal"><span class="pre">tilt()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-114"><a class="reference internal" href="#turtle.shapetransform" title="turtle.shapetransform"><code class="xref py py-func docutils literal"><span class="pre">shapetransform()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-115"><a class="reference internal" href="#turtle.get_shapepoly" title="turtle.get_shapepoly"><code class="xref py py-func docutils literal"><span class="pre">get_shapepoly()</span></code></a></span></div></div></dd></dl></dd><dt><span class="yiyi-st" id="yiyi-116">Using events</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-117"><a class="reference internal" href="#turtle.onclick" title="turtle.onclick"><code class="xref py py-func docutils literal"><span class="pre">onclick()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-118"><a class="reference internal" href="#turtle.onrelease" title="turtle.onrelease"><code class="xref py py-func docutils literal"><span class="pre">onrelease()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-119"><a class="reference internal" href="#turtle.ondrag" title="turtle.ondrag"><code class="xref py py-func docutils literal"><span class="pre">ondrag()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-120">Special Turtle methods</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-121"><a class="reference internal" href="#turtle.begin_poly" title="turtle.begin_poly"><code class="xref py py-func docutils literal"><span class="pre">begin_poly()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-122"><a class="reference internal" href="#turtle.end_poly" title="turtle.end_poly"><code class="xref py py-func docutils literal"><span class="pre">end_poly()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-123"><a class="reference internal" href="#turtle.get_poly" title="turtle.get_poly"><code class="xref py py-func docutils literal"><span class="pre">get_poly()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-124"><a class="reference internal" href="#turtle.clone" title="turtle.clone"><code class="xref py py-func docutils literal"><span class="pre">clone()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-125"><a class="reference internal" href="#turtle.getturtle" title="turtle.getturtle"><code class="xref py py-func docutils literal"><span class="pre">getturtle()</span></code></a> | <a class="reference internal" href="#turtle.getpen" title="turtle.getpen"><code class="xref py py-func docutils literal"><span class="pre">getpen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-126"><a class="reference internal" href="#turtle.getscreen" title="turtle.getscreen"><code class="xref py py-func docutils literal"><span class="pre">getscreen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-127"><a class="reference internal" href="#turtle.setundobuffer" title="turtle.setundobuffer"><code class="xref py py-func docutils literal"><span class="pre">setundobuffer()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-128"><a class="reference internal" href="#turtle.undobufferentries" title="turtle.undobufferentries"><code class="xref py py-func docutils literal"><span class="pre">undobufferentries()</span></code></a></span></div></div></dd></dl></div><div class="section" id="methods-of-turtlescreen-screen"><h3><span class="yiyi-st" id="yiyi-129">24.1.2.2. </span><span class="yiyi-st" id="yiyi-130">Methods of TurtleScreen/Screen</span></h3><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-131">Window control</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-132"><a class="reference internal" href="#turtle.bgcolor" title="turtle.bgcolor"><code class="xref py py-func docutils literal"><span class="pre">bgcolor()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-133"><a class="reference internal" href="#turtle.bgpic" title="turtle.bgpic"><code class="xref py py-func docutils literal"><span class="pre">bgpic()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-134"><a class="reference internal" href="#turtle.clear" title="turtle.clear"><code class="xref py py-func docutils literal"><span class="pre">clear()</span></code></a> | <a class="reference internal" href="#turtle.clearscreen" title="turtle.clearscreen"><code class="xref py py-func docutils literal"><span class="pre">clearscreen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-135"><a class="reference internal" href="#turtle.reset" title="turtle.reset"><code class="xref py py-func docutils literal"><span class="pre">reset()</span></code></a> | <a class="reference internal" href="#turtle.resetscreen" title="turtle.resetscreen"><code class="xref py py-func docutils literal"><span class="pre">resetscreen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-136"><a class="reference internal" href="#turtle.screensize" title="turtle.screensize"><code class="xref py py-func docutils literal"><span class="pre">screensize()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-137"><a class="reference internal" href="#turtle.setworldcoordinates" title="turtle.setworldcoordinates"><code class="xref py py-func docutils literal"><span class="pre">setworldcoordinates()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-138">Animation control</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-139"><a class="reference internal" href="#turtle.delay" title="turtle.delay"><code class="xref py py-func docutils literal"><span class="pre">delay()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-140"><a class="reference internal" href="#turtle.tracer" title="turtle.tracer"><code class="xref py py-func docutils literal"><span class="pre">tracer()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-141"><a class="reference internal" href="#turtle.update" title="turtle.update"><code class="xref py py-func docutils literal"><span class="pre">update()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-142">Using screen events</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-143"><a class="reference internal" href="#turtle.listen" title="turtle.listen"><code class="xref py py-func docutils literal"><span class="pre">listen()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-144"><a class="reference internal" href="#turtle.onkey" title="turtle.onkey"><code class="xref py py-func docutils literal"><span class="pre">onkey()</span></code></a> | <a class="reference internal" href="#turtle.onkeyrelease" title="turtle.onkeyrelease"><code class="xref py py-func docutils literal"><span class="pre">onkeyrelease()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-145"><a class="reference internal" href="#turtle.onkeypress" title="turtle.onkeypress"><code class="xref py py-func docutils literal"><span class="pre">onkeypress()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-146"><a class="reference internal" href="#turtle.onclick" title="turtle.onclick"><code class="xref py py-func docutils literal"><span class="pre">onclick()</span></code></a> | <a class="reference internal" href="#turtle.onscreenclick" title="turtle.onscreenclick"><code class="xref py py-func docutils literal"><span class="pre">onscreenclick()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-147"><a class="reference internal" href="#turtle.ontimer" title="turtle.ontimer"><code class="xref py py-func docutils literal"><span class="pre">ontimer()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-148"><a class="reference internal" href="#turtle.mainloop" title="turtle.mainloop"><code class="xref py py-func docutils literal"><span class="pre">mainloop()</span></code></a> | <a class="reference internal" href="#turtle.done" title="turtle.done"><code class="xref py py-func docutils literal"><span class="pre">done()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-149">Settings and special methods</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-150"><a class="reference internal" href="#turtle.mode" title="turtle.mode"><code class="xref py py-func docutils literal"><span class="pre">mode()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-151"><a class="reference internal" href="#turtle.colormode" title="turtle.colormode"><code class="xref py py-func docutils literal"><span class="pre">colormode()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-152"><a class="reference internal" href="#turtle.getcanvas" title="turtle.getcanvas"><code class="xref py py-func docutils literal"><span class="pre">getcanvas()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-153"><a class="reference internal" href="#turtle.getshapes" title="turtle.getshapes"><code class="xref py py-func docutils literal"><span class="pre">getshapes()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-154"><a class="reference internal" href="#turtle.register_shape" title="turtle.register_shape"><code class="xref py py-func docutils literal"><span class="pre">register_shape()</span></code></a> | <a class="reference internal" href="#turtle.addshape" title="turtle.addshape"><code class="xref py py-func docutils literal"><span class="pre">addshape()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-155"><a class="reference internal" href="#turtle.turtles" title="turtle.turtles"><code class="xref py py-func docutils literal"><span class="pre">turtles()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-156"><a class="reference internal" href="#turtle.window_height" title="turtle.window_height"><code class="xref py py-func docutils literal"><span class="pre">window_height()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-157"><a class="reference internal" href="#turtle.window_width" title="turtle.window_width"><code class="xref py py-func docutils literal"><span class="pre">window_width()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-158">Input methods</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-159"><a class="reference internal" href="#turtle.textinput" title="turtle.textinput"><code class="xref py py-func docutils literal"><span class="pre">textinput()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-160"><a class="reference internal" href="#turtle.numinput" title="turtle.numinput"><code class="xref py py-func docutils literal"><span class="pre">numinput()</span></code></a></span></div></div></dd><dt><span class="yiyi-st" id="yiyi-161">Methods specific to Screen</span></dt><dd><div class="first last line-block"><div class="line"><span class="yiyi-st" id="yiyi-162"><a class="reference internal" href="#turtle.bye" title="turtle.bye"><code class="xref py py-func docutils literal"><span class="pre">bye()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-163"><a class="reference internal" href="#turtle.exitonclick" title="turtle.exitonclick"><code class="xref py py-func docutils literal"><span class="pre">exitonclick()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-164"><a class="reference internal" href="#turtle.setup" title="turtle.setup"><code class="xref py py-func docutils literal"><span class="pre">setup()</span></code></a></span></div><div class="line"><span class="yiyi-st" id="yiyi-165"><a class="reference internal" href="#turtle.title" title="turtle.title"><code class="xref py py-func docutils literal"><span class="pre">title()</span></code></a></span></div></div></dd></dl></div></div><div class="section" id="methods-of-rawturtle-turtle-and-corresponding-functions"><h2><span class="yiyi-st" id="yiyi-166">24.1.3. </span><span class="yiyi-st" id="yiyi-167">Methods of RawTurtle/Turtle and corresponding functions</span></h2><p><span class="yiyi-st" id="yiyi-168">Most of the examples in this section refer to a Turtle instance called <code class="docutils literal"><span class="pre">turtle</span></code>.</span></p><div class="section" id="turtle-motion"><h3><span class="yiyi-st" id="yiyi-169">24.1.3.1. </span><span class="yiyi-st" id="yiyi-170">Turtle motion</span></h3><dl class="function"><dt id="turtle.forward"><span class="yiyi-st" id="yiyi-171"> <code class="descclassname">turtle.</code><code class="descname">forward</code><span class="sig-paren">(</span><em>distance</em><span class="sig-paren">)</span></span></dt><dt id="turtle.fd"><span class="yiyi-st" id="yiyi-172"> <code class="descclassname">turtle.</code><code class="descname">fd</code><span class="sig-paren">(</span><em>distance</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-173">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-174"><strong>distance</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-175">按照指定的<em>距离</em>将龟向前移动。</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="mi">25</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(25.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="o">-</span><span class="mi">75</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(-50.00,0.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.back"><span class="yiyi-st" id="yiyi-176"> <code class="descclassname">turtle.</code><code class="descname">back</code><span class="sig-paren">(</span><em>distance</em><span class="sig-paren">)</span></span></dt><dt id="turtle.bk"><span class="yiyi-st" id="yiyi-177"> <code class="descclassname">turtle.</code><code class="descname">bk</code><span class="sig-paren">(</span><em>distance</em><span class="sig-paren">)</span></span></dt><dt id="turtle.backward"><span class="yiyi-st" id="yiyi-178"> <code class="descclassname">turtle.</code><code class="descname">backward</code><span class="sig-paren">(</span><em>distance</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-179">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-180"><strong>distance</strong> a number</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-181">Move the turtle backward by <em>distance</em>, opposite to the direction the turtle is headed. </span><span class="yiyi-st" id="yiyi-182">不改变乌龟的朝向。</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">backward</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(-30.00,0.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.right"><span class="yiyi-st" id="yiyi-183"> <code class="descclassname">turtle.</code><code class="descname">right</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dt id="turtle.rt"><span class="yiyi-st" id="yiyi-184"> <code class="descclassname">turtle.</code><code class="descname">rt</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-185">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-186"><strong>angle</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-187">Turn turtle right by <em>angle</em> units. </span><span class="yiyi-st" id="yiyi-188">(Units are by default degrees, but can be set via the <a class="reference internal" href="#turtle.degrees" title="turtle.degrees"><code class="xref py py-func docutils literal"><span class="pre">degrees()</span></code></a> and <a class="reference internal" href="#turtle.radians" title="turtle.radians"><code class="xref py py-func docutils literal"><span class="pre">radians()</span></code></a> functions.) </span><span class="yiyi-st" id="yiyi-189">Angle orientation depends on the turtle mode, see <a class="reference internal" href="#turtle.mode" title="turtle.mode"><code class="xref py py-func docutils literal"><span class="pre">mode()</span></code></a>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">22.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">right</span><span class="p">(</span><span class="mi">45</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">337.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.left"><span class="yiyi-st" id="yiyi-190"> <code class="descclassname">turtle.</code><code class="descname">left</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dt id="turtle.lt"><span class="yiyi-st" id="yiyi-191"> <code class="descclassname">turtle.</code><code class="descname">lt</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-192">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-193"><strong>angle</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-194">Turn turtle left by <em>angle</em> units. </span><span class="yiyi-st" id="yiyi-195">(单位是默认度数,但可以通过度数()和弧度()函数来设置。 <a class="reference internal" href="#turtle.degrees" title="turtle.degrees"><code class="xref py py-func docutils literal"><span class="pre"></span></code></a><a class="reference internal" href="#turtle.radians" title="turtle.radians"><code class="xref py py-func docutils literal"><span class="pre"></span></code></a></span><span class="yiyi-st" id="yiyi-196">Angle orientation depends on the turtle mode, see <a class="reference internal" href="#turtle.mode" title="turtle.mode"><code class="xref py py-func docutils literal"><span class="pre">mode()</span></code></a>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">22.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">45</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">67.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.goto"><span class="yiyi-st" id="yiyi-197"> <code class="descclassname">turtle.</code><code class="descname">goto</code><span class="sig-paren">(</span><em>x</em>, <em>y=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.setpos"><span class="yiyi-st" id="yiyi-198"> <code class="descclassname">turtle.</code><code class="descname">setpos</code><span class="sig-paren">(</span><em>x</em>, <em>y=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.setposition"><span class="yiyi-st" id="yiyi-199"> <code class="descclassname">turtle.</code><code class="descname">setposition</code><span class="sig-paren">(</span><em>x</em>, <em>y=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-200">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-201"><strong>x</strong> a number or a pair/vector of numbers</span></li><li><span class="yiyi-st" id="yiyi-202"><strong>y</strong> a number or <code class="docutils literal"><span class="pre">None</span></code></span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-203">If <em>y</em> is <code class="docutils literal"><span class="pre">None</span></code>, <em>x</em> must be a pair of coordinates or a <a class="reference internal" href="#turtle.Vec2D" title="turtle.Vec2D"><code class="xref py py-class docutils literal"><span class="pre">Vec2D</span></code></a> (e.g. </span><span class="yiyi-st" id="yiyi-204">as returned by <a class="reference internal" href="#turtle.pos" title="turtle.pos"><code class="xref py py-func docutils literal"><span class="pre">pos()</span></code></a>).</span></p><p><span class="yiyi-st" id="yiyi-205">Move turtle to an absolute position. </span><span class="yiyi-st" id="yiyi-206">If the pen is down, draw line. </span><span class="yiyi-st" id="yiyi-207">Do not change the turtles orientation.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">tp</span> <span class="o">=</span> <span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">tp</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setpos</span><span class="p">(</span><span class="mi">60</span><span class="p">,</span><span class="mi">30</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="go">(60.00,30.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setpos</span><span class="p">((</span><span class="mi">20</span><span class="p">,</span><span class="mi">80</span><span class="p">))</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="go">(20.00,80.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setpos</span><span class="p">(</span><span class="n">tp</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.setx"><span class="yiyi-st" id="yiyi-208"> <code class="descclassname">turtle.</code><code class="descname">setx</code><span class="sig-paren">(</span><em>x</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-209">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-210"><strong>x</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-211">Set the turtles first coordinate to <em>x</em>, leave second coordinate unchanged.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,240.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setx</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(10.00,240.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.sety"><span class="yiyi-st" id="yiyi-212"> <code class="descclassname">turtle.</code><code class="descname">sety</code><span class="sig-paren">(</span><em>y</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-213">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-214"><strong>y</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-215">Set the turtles second coordinate to <em>y</em>, leave first coordinate unchanged.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,40.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">sety</span><span class="p">(</span><span class="o">-</span><span class="mi">10</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,-10.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.setheading"><span class="yiyi-st" id="yiyi-216"> <code class="descclassname">turtle.</code><code class="descname">setheading</code><span class="sig-paren">(</span><em>to_angle</em><span class="sig-paren">)</span></span></dt><dt id="turtle.seth"><span class="yiyi-st" id="yiyi-217"> <code class="descclassname">turtle.</code><code class="descname">seth</code><span class="sig-paren">(</span><em>to_angle</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-218">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-219"><strong>to_angle</strong> a number (integer or float)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-220">Set the orientation of the turtle to <em>to_angle</em>. </span><span class="yiyi-st" id="yiyi-221">Here are some common directions in degrees:</span></p><table border="1" class="docutils"><thead valign="bottom"><tr class="row-odd"><th class="head"><span class="yiyi-st" id="yiyi-222">standard mode</span></th><th class="head"><span class="yiyi-st" id="yiyi-223">logo mode</span></th></tr></thead><tbody valign="top"><tr class="row-even"><td><span class="yiyi-st" id="yiyi-224">0 - east</span></td><td><span class="yiyi-st" id="yiyi-225">0 - north</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-226">90 - north</span></td><td><span class="yiyi-st" id="yiyi-227">90 - east</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-228">180 - west</span></td><td><span class="yiyi-st" id="yiyi-229">180 - south</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-230">270 - south</span></td><td><span class="yiyi-st" id="yiyi-231">270 - west</span></td></tr></tbody></table><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setheading</span><span class="p">(</span><span class="mi">90</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">90.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.home"><span class="yiyi-st" id="yiyi-232"> <code class="descclassname">turtle.</code><code class="descname">home</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-233">Move turtle to the origin coordinates (0,0) and set its heading to its start-orientation (which depends on the mode, see <a class="reference internal" href="#turtle.mode" title="turtle.mode"><code class="xref py py-func docutils literal"><span class="pre">mode()</span></code></a>).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">90.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,-10.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">0.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.circle"><span class="yiyi-st" id="yiyi-234"> <code class="descclassname">turtle.</code><code class="descname">circle</code><span class="sig-paren">(</span><em>radius</em>, <em>extent=None</em>, <em>steps=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-235">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-236"><strong>radius</strong> a number</span></li><li><span class="yiyi-st" id="yiyi-237"><strong>extent</strong> a number (or <code class="docutils literal"><span class="pre">None</span></code>)</span></li><li><span class="yiyi-st" id="yiyi-238"><strong>steps</strong> an integer (or <code class="docutils literal"><span class="pre">None</span></code>)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-239">用给定的<em>半径绘制一个圆圈</em></span><span class="yiyi-st" id="yiyi-240">The center is <em>radius</em> units left of the turtle; <em>extent</em> an angle determines which part of the circle is drawn. </span><span class="yiyi-st" id="yiyi-241">If <em>extent</em> is not given, draw the entire circle. </span><span class="yiyi-st" id="yiyi-242">If <em>extent</em> is not a full circle, one endpoint of the arc is the current pen position. </span><span class="yiyi-st" id="yiyi-243">如果<em>半径</em>为正值,则按逆时针方向绘制圆弧,否则按顺时针方向绘制圆弧。</span><span class="yiyi-st" id="yiyi-244">最后龟的方向改变了<em>extent</em>的数量。</span></p><p><span class="yiyi-st" id="yiyi-245">由于圆是用内切正多边形近似的,因此<em></em>决定了要使用的步数。</span><span class="yiyi-st" id="yiyi-246">如果没有给出,它会自动计算。</span><span class="yiyi-st" id="yiyi-247">可用于绘制正多边形。</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">0.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(-0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">0.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span><span class="mi">120</span><span class="p">,</span> <span class="mi">180</span><span class="p">)</span> <span class="c1"># draw a semicircle</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,240.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">180.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.dot"><span class="yiyi-st" id="yiyi-248"> <code class="descclassname">turtle.</code><code class="descname">dot</code><span class="sig-paren">(</span><em>size=None</em>, <em>*color</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-249">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-250"><strong>size</strong> an integer &gt;= 1 (if given)</span></li><li><span class="yiyi-st" id="yiyi-251"><strong>color</strong> a colorstring or a numeric color tuple</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-252">Draw a circular dot with diameter <em>size</em>, using <em>color</em>. </span><span class="yiyi-st" id="yiyi-253">If <em>size</em> is not given, the maximum of pensize+4 and 2*pensize is used.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">dot</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">);</span> <span class="n">turtle</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="s2">"blue"</span><span class="p">);</span> <span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(100.00,-0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">0.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.stamp"><span class="yiyi-st" id="yiyi-254"> <code class="descclassname">turtle.</code><code class="descname">stamp</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-255">Stamp a copy of the turtle shape onto the canvas at the current turtle position. </span><span class="yiyi-st" id="yiyi-256">Return a stamp_id for that stamp, which can be used to delete it by calling <code class="docutils literal"><span class="pre">clearstamp(stamp_id)</span></code>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"blue"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">stamp</span><span class="p">()</span>
<span class="go">11</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.clearstamp"><span class="yiyi-st" id="yiyi-257"> <code class="descclassname">turtle.</code><code class="descname">clearstamp</code><span class="sig-paren">(</span><em>stampid</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-258">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-259"><strong>stampid</strong> an integer, must be return value of previous <a class="reference internal" href="#turtle.stamp" title="turtle.stamp"><code class="xref py py-func docutils literal"><span class="pre">stamp()</span></code></a> call</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-260">Delete stamp with given <em>stampid</em>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(150.00,-0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"blue"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">astamp</span> <span class="o">=</span> <span class="n">turtle</span><span class="o">.</span><span class="n">stamp</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(200.00,-0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">clearstamp</span><span class="p">(</span><span class="n">astamp</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(200.00,-0.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.clearstamps"><span class="yiyi-st" id="yiyi-261"> <code class="descclassname">turtle.</code><code class="descname">clearstamps</code><span class="sig-paren">(</span><em>n=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-262">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-263"><strong>n</strong> an integer (or <code class="docutils literal"><span class="pre">None</span></code>)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-264">Delete all or first/last <em>n</em> of turtles stamps. </span><span class="yiyi-st" id="yiyi-265">If <em>n</em> is None, delete all stamps, if <em>n</em> &gt; 0 delete first <em>n</em> stamps, else if <em>n</em> &lt; 0 delete last <em>n</em> stamps.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">8</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">stamp</span><span class="p">();</span> <span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span>
<span class="go">13</span>
<span class="go">14</span>
<span class="go">15</span>
<span class="go">16</span>
<span class="go">17</span>
<span class="go">18</span>
<span class="go">19</span>
<span class="go">20</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">clearstamps</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">clearstamps</span><span class="p">(</span><span class="o">-</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">clearstamps</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.undo"><span class="yiyi-st" id="yiyi-266"> <code class="descclassname">turtle.</code><code class="descname">undo</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-267">Undo (repeatedly) the last turtle action(s). </span><span class="yiyi-st" id="yiyi-268">Number of available undo actions is determined by the size of the undobuffer.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">4</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">);</span> <span class="n">turtle</span><span class="o">.</span><span class="n">lt</span><span class="p">(</span><span class="mi">80</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">8</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">undo</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.speed"><span class="yiyi-st" id="yiyi-269"> <code class="descclassname">turtle.</code><code class="descname">speed</code><span class="sig-paren">(</span><em>speed=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-270">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-271"><strong>speed</strong> an integer in the range 0..10 or a speedstring (see below)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-272">Set the turtles speed to an integer value in the range 0..10. </span><span class="yiyi-st" id="yiyi-273">If no argument is given, return current speed.</span></p><p><span class="yiyi-st" id="yiyi-274">If input is a number greater than 10 or smaller than 0.5, speed is set to 0. </span><span class="yiyi-st" id="yiyi-275">Speedstrings are mapped to speedvalues as follows:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-276">“fastest”: 0</span></li><li><span class="yiyi-st" id="yiyi-277">“fast”: 10</span></li><li><span class="yiyi-st" id="yiyi-278">“normal”: 6</span></li><li><span class="yiyi-st" id="yiyi-279">“slow”: 3</span></li><li><span class="yiyi-st" id="yiyi-280">“slowest”: 1</span></li></ul><p><span class="yiyi-st" id="yiyi-281">Speeds from 1 to 10 enforce increasingly faster animation of line drawing and turtle turning.</span></p><p><span class="yiyi-st" id="yiyi-282">Attention: <em>speed</em> = 0 means that <em>no</em> animation takes place. </span><span class="yiyi-st" id="yiyi-283">forward/back makes turtle jump and likewise left/right make the turtle turn instantly.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">speed</span><span class="p">()</span>
<span class="go">3</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">speed</span><span class="p">(</span><span class="s1">'normal'</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">speed</span><span class="p">()</span>
<span class="go">6</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">speed</span><span class="p">(</span><span class="mi">9</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">speed</span><span class="p">()</span>
<span class="go">9</span>
</code></pre></dd></dl></div><div class="section" id="tell-turtle-s-state"><h3><span class="yiyi-st" id="yiyi-284">24.1.3.2. </span><span class="yiyi-st" id="yiyi-285">Tell Turtles state</span></h3><dl class="function"><dt id="turtle.position"><span class="yiyi-st" id="yiyi-286"> <code class="descclassname">turtle.</code><code class="descname">position</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.pos"><span class="yiyi-st" id="yiyi-287"> <code class="descclassname">turtle.</code><code class="descname">pos</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-288">Return the turtles current location (x,y) (as a <a class="reference internal" href="#turtle.Vec2D" title="turtle.Vec2D"><code class="xref py py-class docutils literal"><span class="pre">Vec2D</span></code></a> vector).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="go">(440.00,-0.00)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.towards"><span class="yiyi-st" id="yiyi-289"> <code class="descclassname">turtle.</code><code class="descname">towards</code><span class="sig-paren">(</span><em>x</em>, <em>y=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-290">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-291"><strong>x</strong> a number or a pair/vector of numbers or a turtle instance</span></li><li><span class="yiyi-st" id="yiyi-292"><strong>y</strong> a number if <em>x</em> is a number, else <code class="docutils literal"><span class="pre">None</span></code></span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-293">Return the angle between the line from turtle position to position specified by (x,y), the vector or the other turtle. </span><span class="yiyi-st" id="yiyi-294">This depends on the turtles start orientation which depends on the mode - “standard”/”world” or “logo”).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">goto</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">towards</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
<span class="go">225.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.xcor"><span class="yiyi-st" id="yiyi-295"> <code class="descclassname">turtle.</code><code class="descname">xcor</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-296">Return the turtles x coordinate.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">()</span>
<span class="go">(64.28,76.60)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">print</span><span class="p">(</span><span class="nb">round</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">xcor</span><span class="p">(),</span> <span class="mi">5</span><span class="p">))</span>
<span class="go">64.27876</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.ycor"><span class="yiyi-st" id="yiyi-297"> <code class="descclassname">turtle.</code><code class="descname">ycor</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-298">Return the turtles y coordinate.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">60</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">print</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">pos</span><span class="p">())</span>
<span class="go">(50.00,86.60)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">print</span><span class="p">(</span><span class="nb">round</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">ycor</span><span class="p">(),</span> <span class="mi">5</span><span class="p">))</span>
<span class="go">86.60254</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.heading"><span class="yiyi-st" id="yiyi-299"> <code class="descclassname">turtle.</code><code class="descname">heading</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-300">Return the turtles current heading (value depends on the turtle mode, see <a class="reference internal" href="#turtle.mode" title="turtle.mode"><code class="xref py py-func docutils literal"><span class="pre">mode()</span></code></a>).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">67</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">67.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.distance"><span class="yiyi-st" id="yiyi-301"> <code class="descclassname">turtle.</code><code class="descname">distance</code><span class="sig-paren">(</span><em>x</em>, <em>y=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-302">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-303"><strong>x</strong> a number or a pair/vector of numbers or a turtle instance</span></li><li><span class="yiyi-st" id="yiyi-304"><strong>y</strong> a number if <em>x</em> is a number, else <code class="docutils literal"><span class="pre">None</span></code></span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-305">Return the distance from the turtle to (x,y), the given vector, or the given other turtle, in turtle step units.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">distance</span><span class="p">(</span><span class="mi">30</span><span class="p">,</span><span class="mi">40</span><span class="p">)</span>
<span class="go">50.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">distance</span><span class="p">((</span><span class="mi">30</span><span class="p">,</span><span class="mi">40</span><span class="p">))</span>
<span class="go">50.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">joe</span> <span class="o">=</span> <span class="n">Turtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">joe</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="mi">77</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">distance</span><span class="p">(</span><span class="n">joe</span><span class="p">)</span>
<span class="go">77.0</span>
</code></pre></dd></dl></div><div class="section" id="settings-for-measurement"><h3><span class="yiyi-st" id="yiyi-306">24.1.3.3. </span><span class="yiyi-st" id="yiyi-307">Settings for measurement</span></h3><dl class="function"><dt id="turtle.degrees"><span class="yiyi-st" id="yiyi-308"> <code class="descclassname">turtle.</code><code class="descname">degrees</code><span class="sig-paren">(</span><em>fullcircle=360.0</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-309">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-310"><strong>fullcircle</strong> a number</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-311">Set angle measurement units, i.e. </span><span class="yiyi-st" id="yiyi-312">set number of “degrees” for a full circle. </span><span class="yiyi-st" id="yiyi-313">Default value is 360 degrees.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">90</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">90.0</span>
<span class="go">Change angle measurement unit to grad (also known as gon,</span>
<span class="go">grade, or gradian and equals 1/100-th of the right angle.)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">degrees</span><span class="p">(</span><span class="mf">400.0</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">100.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">degrees</span><span class="p">(</span><span class="mi">360</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">90.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.radians"><span class="yiyi-st" id="yiyi-314"> <code class="descclassname">turtle.</code><code class="descname">radians</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-315">Set the angle measurement units to radians. </span><span class="yiyi-st" id="yiyi-316">Equivalent to <code class="docutils literal"><span class="pre">degrees(2*math.pi)</span></code>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">90</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">90.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">radians</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">1.5707963267948966</span>
</code></pre></dd></dl></div><div class="section" id="pen-control"><h3><span class="yiyi-st" id="yiyi-317">24.1.3.4. </span><span class="yiyi-st" id="yiyi-318">Pen control</span></h3><div class="section" id="drawing-state"><h4><span class="yiyi-st" id="yiyi-319">24.1.3.4.1. </span><span class="yiyi-st" id="yiyi-320">Drawing state</span></h4><dl class="function"><dt id="turtle.pendown"><span class="yiyi-st" id="yiyi-321"> <code class="descclassname">turtle.</code><code class="descname">pendown</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.pd"><span class="yiyi-st" id="yiyi-322"> <code class="descclassname">turtle.</code><code class="descname">pd</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.down"><span class="yiyi-st" id="yiyi-323"> <code class="descclassname">turtle.</code><code class="descname">down</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-324">Pull the pen down drawing when moving.</span></p></dd></dl><dl class="function"><dt id="turtle.penup"><span class="yiyi-st" id="yiyi-325"> <code class="descclassname">turtle.</code><code class="descname">penup</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.pu"><span class="yiyi-st" id="yiyi-326"> <code class="descclassname">turtle.</code><code class="descname">pu</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.up"><span class="yiyi-st" id="yiyi-327"> <code class="descclassname">turtle.</code><code class="descname">up</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-328">Pull the pen up no drawing when moving.</span></p></dd></dl><dl class="function"><dt id="turtle.pensize"><span class="yiyi-st" id="yiyi-329"> <code class="descclassname">turtle.</code><code class="descname">pensize</code><span class="sig-paren">(</span><em>width=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.width"><span class="yiyi-st" id="yiyi-330"> <code class="descclassname">turtle.</code><code class="descname">width</code><span class="sig-paren">(</span><em>width=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-331">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-332"><strong>width</strong> a positive number</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-333">Set the line thickness to <em>width</em> or return it. </span><span class="yiyi-st" id="yiyi-334">If resizemode is set to “auto” and turtleshape is a polygon, that polygon is drawn with the same line thickness. </span><span class="yiyi-st" id="yiyi-335">If no argument is given, the current pensize is returned.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pensize</span><span class="p">()</span>
<span class="go">1</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pensize</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span> <span class="c1"># from here on lines of width 10 are drawn</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.pen"><span class="yiyi-st" id="yiyi-336"> <code class="descclassname">turtle.</code><code class="descname">pen</code><span class="sig-paren">(</span><em>pen=None</em>, <em>**pendict</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-337">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-338"><strong>pen</strong> a dictionary with some or all of the below listed keys</span></li><li><span class="yiyi-st" id="yiyi-339"><strong>pendict</strong> one or more keyword-arguments with the below listed keys as keywords</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-340">Return or set the pens attributes in a “pen-dictionary” with the following key/value pairs:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-341">“shown”: True/False</span></li><li><span class="yiyi-st" id="yiyi-342">“pendown”: True/False</span></li><li><span class="yiyi-st" id="yiyi-343">“pencolor”: color-string or color-tuple</span></li><li><span class="yiyi-st" id="yiyi-344">“fillcolor”: color-string or color-tuple</span></li><li><span class="yiyi-st" id="yiyi-345">“pensize”: positive number</span></li><li><span class="yiyi-st" id="yiyi-346">“speed”: number in range 0..10</span></li><li><span class="yiyi-st" id="yiyi-347">“resizemode”: “auto” or “user” or “noresize”</span></li><li><span class="yiyi-st" id="yiyi-348">“stretchfactor”: (positive number, positive number)</span></li><li><span class="yiyi-st" id="yiyi-349">“outline”: positive number</span></li><li><span class="yiyi-st" id="yiyi-350">“tilt”: number</span></li></ul><p><span class="yiyi-st" id="yiyi-351">This dictionary can be used as argument for a subsequent call to <a class="reference internal" href="#turtle.pen" title="turtle.pen"><code class="xref py py-func docutils literal"><span class="pre">pen()</span></code></a> to restore the former pen-state. </span><span class="yiyi-st" id="yiyi-352">Moreover one or more of these attributes can be provided as keyword-arguments. </span><span class="yiyi-st" id="yiyi-353">This can be used to set several pen attributes in one statement.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">(</span><span class="n">fillcolor</span><span class="o">=</span><span class="s2">"black"</span><span class="p">,</span> <span class="n">pencolor</span><span class="o">=</span><span class="s2">"red"</span><span class="p">,</span> <span class="n">pensize</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">sorted</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">()</span><span class="o">.</span><span class="n">items</span><span class="p">())</span>
<span class="go">[('fillcolor', 'black'), ('outline', 1), ('pencolor', 'red'),</span>
<span class="go"> ('pendown', True), ('pensize', 10), ('resizemode', 'noresize'),</span>
<span class="go"> ('shearfactor', 0.0), ('shown', True), ('speed', 9),</span>
<span class="go"> ('stretchfactor', (1.0, 1.0)), ('tilt', 0.0)]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">penstate</span><span class="o">=</span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"yellow"</span><span class="p">,</span> <span class="s2">""</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">penup</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">sorted</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">()</span><span class="o">.</span><span class="n">items</span><span class="p">())[:</span><span class="mi">3</span><span class="p">]</span>
<span class="go">[('fillcolor', ''), ('outline', 1), ('pencolor', 'yellow')]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">(</span><span class="n">penstate</span><span class="p">,</span> <span class="n">fillcolor</span><span class="o">=</span><span class="s2">"green"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">sorted</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">pen</span><span class="p">()</span><span class="o">.</span><span class="n">items</span><span class="p">())[:</span><span class="mi">3</span><span class="p">]</span>
<span class="go">[('fillcolor', 'green'), ('outline', 1), ('pencolor', 'red')]</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.isdown"><span class="yiyi-st" id="yiyi-354"> <code class="descclassname">turtle.</code><code class="descname">isdown</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-355">Return <code class="docutils literal"><span class="pre">True</span></code> if pen is down, <code class="docutils literal"><span class="pre">False</span></code> if its up.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">penup</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">isdown</span><span class="p">()</span>
<span class="go">False</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pendown</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">isdown</span><span class="p">()</span>
<span class="go">True</span>
</code></pre></dd></dl></div><div class="section" id="color-control"><h4><span class="yiyi-st" id="yiyi-356">24.1.3.4.2. </span><span class="yiyi-st" id="yiyi-357">Color control</span></h4><dl class="function"><dt id="turtle.pencolor"><span class="yiyi-st" id="yiyi-358"> <code class="descclassname">turtle.</code><code class="descname">pencolor</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-359">Return or set the pencolor.</span></p><p><span class="yiyi-st" id="yiyi-360">Four input formats are allowed:</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-361"><code class="docutils literal"><span class="pre">pencolor()</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-362">Return the current pencolor as color specification string or as a tuple (see example). </span><span class="yiyi-st" id="yiyi-363">May be used as input to another color/pencolor/fillcolor call.</span></dd><dt><span class="yiyi-st" id="yiyi-364"><code class="docutils literal"><span class="pre">pencolor(colorstring)</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-365"><em>colorstring</em>设定为pencolor这是一个Tk颜色规范字符串<code class="docutils literal"><span class="pre">“red”</span></code><code class="docutils literal"><span class="pre">“yellow”</span></code><code class="docutils literal"><span class="pre">"#33cc8c"</span></code></span></dd><dt><span class="yiyi-st" id="yiyi-366"><code class="docutils literal"><span class="pre">pencolor((r,</span> <span class="pre">g,</span> <span class="pre">b))</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-367">Set pencolor to the RGB color represented by the tuple of <em>r</em>, <em>g</em>, and <em>b</em>. </span><span class="yiyi-st" id="yiyi-368">Each of <em>r</em>, <em>g</em>, and <em>b</em> must be in the range 0..colormode, where colormode is either 1.0 or 255 (see <a class="reference internal" href="#turtle.colormode" title="turtle.colormode"><code class="xref py py-func docutils literal"><span class="pre">colormode()</span></code></a>).</span></dd><dt><span class="yiyi-st" id="yiyi-369"><code class="docutils literal"><span class="pre">pencolor(r,</span> <span class="pre">g,</span> <span class="pre">b)</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-371"><blockquote class="first"> <div>Set pencolor to the RGB color represented by <em>r</em>, <em>g</em>, and <em>b</em>. Each of <em>r</em>, <em>g</em>, and <em>b</em> must be in the range 0..colormode.</div></blockquote></span><p class="last"><span class="yiyi-st" id="yiyi-370">If turtleshape is a polygon, the outline of that polygon is drawn with the newly set pencolor.</span></p></dd></dl><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">colormode</span><span class="p">()</span>
<span class="go">1.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="go">'red'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">(</span><span class="s2">"brown"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="go">'brown'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">tup</span> <span class="o">=</span> <span class="p">(</span><span class="mf">0.2</span><span class="p">,</span> <span class="mf">0.8</span><span class="p">,</span> <span class="mf">0.55</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">(</span><span class="n">tup</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="go">(0.2, 0.8, 0.5490196078431373)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">colormode</span><span class="p">(</span><span class="mi">255</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="go">(51.0, 204.0, 140.0)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">(</span><span class="s1">'#32c18f'</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="go">(50.0, 193.0, 143.0)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.fillcolor"><span class="yiyi-st" id="yiyi-372"> <code class="descclassname">turtle.</code><code class="descname">fillcolor</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-373">Return or set the fillcolor.</span></p><p><span class="yiyi-st" id="yiyi-374">Four input formats are allowed:</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-375"><code class="docutils literal"><span class="pre">fillcolor()</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-376">Return the current fillcolor as color specification string, possibly in tuple format (see example). </span><span class="yiyi-st" id="yiyi-377">May be used as input to another color/pencolor/fillcolor call.</span></dd><dt><span class="yiyi-st" id="yiyi-378"><code class="docutils literal"><span class="pre">fillcolor(colorstring)</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-379">Set fillcolor to <em>colorstring</em>, which is a Tk color specification string, such as <code class="docutils literal"><span class="pre">"red"</span></code>, <code class="docutils literal"><span class="pre">"yellow"</span></code>, or <code class="docutils literal"><span class="pre">"#33cc8c"</span></code>.</span></dd><dt><span class="yiyi-st" id="yiyi-380"><code class="docutils literal"><span class="pre">fillcolor((r,</span> <span class="pre">g,</span> <span class="pre">b))</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-381">Set fillcolor to the RGB color represented by the tuple of <em>r</em>, <em>g</em>, and <em>b</em>. </span><span class="yiyi-st" id="yiyi-382">Each of <em>r</em>, <em>g</em>, and <em>b</em> must be in the range 0..colormode, where colormode is either 1.0 or 255 (see <a class="reference internal" href="#turtle.colormode" title="turtle.colormode"><code class="xref py py-func docutils literal"><span class="pre">colormode()</span></code></a>).</span></dd><dt><span class="yiyi-st" id="yiyi-383"><code class="docutils literal"><span class="pre">fillcolor(r,</span> <span class="pre">g,</span> <span class="pre">b)</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-385"><blockquote class="first"> <div>Set fillcolor to the RGB color represented by <em>r</em>, <em>g</em>, and <em>b</em>. Each of <em>r</em>, <em>g</em>, and <em>b</em> must be in the range 0..colormode.</div></blockquote></span><p class="last"><span class="yiyi-st" id="yiyi-384">If turtleshape is a polygon, the interior of that polygon is drawn with the newly set fillcolor.</span></p></dd></dl><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">(</span><span class="s2">"violet"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">()</span>
<span class="go">'violet'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">col</span> <span class="o">=</span> <span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">col</span>
<span class="go">(50.0, 193.0, 143.0)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">(</span><span class="n">col</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">()</span>
<span class="go">(50.0, 193.0, 143.0)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">(</span><span class="s1">'#ffffff'</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">()</span>
<span class="go">(255.0, 255.0, 255.0)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.color"><span class="yiyi-st" id="yiyi-386"> <code class="descclassname">turtle.</code><code class="descname">color</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-387">Return or set pencolor and fillcolor.</span></p><p><span class="yiyi-st" id="yiyi-388">Several input formats are allowed. </span><span class="yiyi-st" id="yiyi-389">They use 0 to 3 arguments as follows:</span></p><dl class="docutils"><dt><span class="yiyi-st" id="yiyi-390"><code class="docutils literal"><span class="pre">color()</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-391">Return the current pencolor and the current fillcolor as a pair of color specification strings or tuples as returned by <a class="reference internal" href="#turtle.pencolor" title="turtle.pencolor"><code class="xref py py-func docutils literal"><span class="pre">pencolor()</span></code></a> and <a class="reference internal" href="#turtle.fillcolor" title="turtle.fillcolor"><code class="xref py py-func docutils literal"><span class="pre">fillcolor()</span></code></a>.</span></dd><dt><span class="yiyi-st" id="yiyi-392"><code class="docutils literal"><span class="pre">color(colorstring)</span></code>, <code class="docutils literal"><span class="pre">color((r,g,b))</span></code>, <code class="docutils literal"><span class="pre">color(r,g,b)</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-393">Inputs as in <a class="reference internal" href="#turtle.pencolor" title="turtle.pencolor"><code class="xref py py-func docutils literal"><span class="pre">pencolor()</span></code></a>, set both, fillcolor and pencolor, to the given value.</span></dd><dt><span class="yiyi-st" id="yiyi-394"><code class="docutils literal"><span class="pre">color(colorstring1,</span> <span class="pre">colorstring2)</span></code>, <code class="docutils literal"><span class="pre">color((r1,g1,b1),</span> <span class="pre">(r2,g2,b2))</span></code></span></dt><dd><span class="yiyi-st" id="yiyi-396"><blockquote class="first"> <div>Equivalent to <code class="docutils literal"><span class="pre">pencolor(colorstring1)</span></code> and <code class="docutils literal"><span class="pre">fillcolor(colorstring2)</span></code> and analogously if the other input format is used.</div></blockquote></span><p class="last"><span class="yiyi-st" id="yiyi-395">If turtleshape is a polygon, outline and interior of that polygon is drawn with the newly set colors.</span></p></dd></dl><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"red"</span><span class="p">,</span> <span class="s2">"green"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">()</span>
<span class="go">('red', 'green')</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">color</span><span class="p">(</span><span class="s2">"#285078"</span><span class="p">,</span> <span class="s2">"#a0c8f0"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">color</span><span class="p">()</span>
<span class="go">((40.0, 80.0, 120.0), (160.0, 200.0, 240.0))</span>
</code></pre></dd></dl><p><span class="yiyi-st" id="yiyi-397">See also: Screen method <a class="reference internal" href="#turtle.colormode" title="turtle.colormode"><code class="xref py py-func docutils literal"><span class="pre">colormode()</span></code></a>.</span></p></div><div class="section" id="filling"><h4><span class="yiyi-st" id="yiyi-398">24.1.3.4.3. </span><span class="yiyi-st" id="yiyi-399">Filling</span></h4><dl class="function"><dt id="turtle.filling"><span class="yiyi-st" id="yiyi-400"> <code class="descclassname">turtle.</code><code class="descname">filling</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-401">Return fillstate (<code class="docutils literal"><span class="pre">True</span></code> if filling, <code class="docutils literal"><span class="pre">False</span></code> else).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">begin_fill</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">if</span> <span class="n">turtle</span><span class="o">.</span><span class="n">filling</span><span class="p">():</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">pensize</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="gp">... </span><span class="k">else</span><span class="p">:</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">pensize</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.begin_fill"><span class="yiyi-st" id="yiyi-402"> <code class="descclassname">turtle.</code><code class="descname">begin_fill</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-403">To be called just before drawing a shape to be filled.</span></p></dd></dl><dl class="function"><dt id="turtle.end_fill"><span class="yiyi-st" id="yiyi-404"> <code class="descclassname">turtle.</code><code class="descname">end_fill</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-405">Fill the shape drawn after the last call to <a class="reference internal" href="#turtle.begin_fill" title="turtle.begin_fill"><code class="xref py py-func docutils literal"><span class="pre">begin_fill()</span></code></a>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"black"</span><span class="p">,</span> <span class="s2">"red"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">begin_fill</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span><span class="mi">80</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">end_fill</span><span class="p">()</span>
</code></pre></dd></dl></div><div class="section" id="more-drawing-control"><h4><span class="yiyi-st" id="yiyi-406">24.1.3.4.4. </span><span class="yiyi-st" id="yiyi-407">More drawing control</span></h4><dl class="function"><dt id="turtle.reset"><span class="yiyi-st" id="yiyi-408"> <code class="descclassname">turtle.</code><code class="descname">reset</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-409">Delete the turtles drawings from the screen, re-center the turtle and set variables to the default values.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">goto</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="o">-</span><span class="mi">22</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,-22.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">100.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">position</span><span class="p">()</span>
<span class="go">(0.00,0.00)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">heading</span><span class="p">()</span>
<span class="go">0.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.clear"><span class="yiyi-st" id="yiyi-410"> <code class="descclassname">turtle.</code><code class="descname">clear</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-411">Delete the turtles drawings from the screen. </span><span class="yiyi-st" id="yiyi-412">Do not move turtle. </span><span class="yiyi-st" id="yiyi-413">State and position of the turtle as well as drawings of other turtles are not affected.</span></p></dd></dl><dl class="function"><dt id="turtle.write"><span class="yiyi-st" id="yiyi-414"> <code class="descclassname">turtle.</code><code class="descname">write</code><span class="sig-paren">(</span><em>arg</em>, <em>move=False</em>, <em>align="left"</em>, <em>font=("Arial"</em>, <em>8</em>, <em>"normal")</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-415">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-416"><strong>arg</strong> object to be written to the TurtleScreen</span></li><li><span class="yiyi-st" id="yiyi-417"><strong>move</strong> True/False</span></li><li><span class="yiyi-st" id="yiyi-418"><strong>align</strong> one of the strings “left”, “center” or right”</span></li><li><span class="yiyi-st" id="yiyi-419"><strong>font</strong> a triple (fontname, fontsize, fonttype)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-420">Write text - the string representation of <em>arg</em> - at the current turtle position according to <em>align</em> (“left”, “center” or right”) and with the given font. </span><span class="yiyi-st" id="yiyi-421">If <em>move</em> is true, the pen is moved to the bottom-right corner of the text. </span><span class="yiyi-st" id="yiyi-422">By default, <em>move</em> is <code class="docutils literal"><span class="pre">False</span></code>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s2">"Home = "</span><span class="p">,</span> <span class="kc">True</span><span class="p">,</span> <span class="n">align</span><span class="o">=</span><span class="s2">"center"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">write</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">),</span> <span class="kc">True</span><span class="p">)</span>
</code></pre></dd></dl></div></div><div class="section" id="turtle-state"><h3><span class="yiyi-st" id="yiyi-423">24.1.3.5. </span><span class="yiyi-st" id="yiyi-424">Turtle state</span></h3><div class="section" id="visibility"><h4><span class="yiyi-st" id="yiyi-425">24.1.3.5.1. </span><span class="yiyi-st" id="yiyi-426">Visibility</span></h4><dl class="function"><dt id="turtle.hideturtle"><span class="yiyi-st" id="yiyi-427"> <code class="descclassname">turtle.</code><code class="descname">hideturtle</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.ht"><span class="yiyi-st" id="yiyi-428"> <code class="descclassname">turtle.</code><code class="descname">ht</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-429">Make the turtle invisible. </span><span class="yiyi-st" id="yiyi-430">Its a good idea to do this while youre in the middle of doing some complex drawing, because hiding the turtle speeds up the drawing observably.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">hideturtle</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.showturtle"><span class="yiyi-st" id="yiyi-431"> <code class="descclassname">turtle.</code><code class="descname">showturtle</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.st"><span class="yiyi-st" id="yiyi-432"> <code class="descclassname">turtle.</code><code class="descname">st</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-433">Make the turtle visible.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">showturtle</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.isvisible"><span class="yiyi-st" id="yiyi-434"> <code class="descclassname">turtle.</code><code class="descname">isvisible</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-435">Return <code class="docutils literal"><span class="pre">True</span></code> if the Turtle is shown, <code class="docutils literal"><span class="pre">False</span></code> if its hidden.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">hideturtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">isvisible</span><span class="p">()</span>
<span class="go">False</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">showturtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">isvisible</span><span class="p">()</span>
<span class="go">True</span>
</code></pre></dd></dl></div><div class="section" id="appearance"><h4><span class="yiyi-st" id="yiyi-436">24.1.3.5.2. </span><span class="yiyi-st" id="yiyi-437">Appearance</span></h4><dl class="function"><dt id="turtle.shape"><span class="yiyi-st" id="yiyi-438"> <code class="descclassname">turtle.</code><code class="descname">shape</code><span class="sig-paren">(</span><em>name=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-439">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-440"><strong>name</strong> a string which is a valid shapename</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-441">Set turtle shape to shape with given <em>name</em> or, if name is not given, return name of current shape. </span><span class="yiyi-st" id="yiyi-442">Shape with <em>name</em> must exist in the TurtleScreens shape dictionary. </span><span class="yiyi-st" id="yiyi-443">Initially there are the following polygon shapes: “arrow”, “turtle”, “circle”, “square”, “triangle”, “classic”. </span><span class="yiyi-st" id="yiyi-444">To learn about how to deal with shapes see Screen method <a class="reference internal" href="#turtle.register_shape" title="turtle.register_shape"><code class="xref py py-func docutils literal"><span class="pre">register_shape()</span></code></a>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">()</span>
<span class="go">'classic'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"turtle"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">()</span>
<span class="go">'turtle'</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.resizemode"><span class="yiyi-st" id="yiyi-445"> <code class="descclassname">turtle.</code><code class="descname">resizemode</code><span class="sig-paren">(</span><em>rmode=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-446">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-447"><strong>rmode</strong> one of the strings “auto”, “user”, “noresize”</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-448">Set resizemode to one of the values: “auto”, “user”, “noresize”. </span><span class="yiyi-st" id="yiyi-449">If <em>rmode</em> is not given, return current resizemode. </span><span class="yiyi-st" id="yiyi-450">Different resizemodes have the following effects:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-451">“auto”: adapts the appearance of the turtle corresponding to the value of pensize.</span></li><li><span class="yiyi-st" id="yiyi-452">“user”: adapts the appearance of the turtle according to the values of stretchfactor and outlinewidth (outline), which are set by <a class="reference internal" href="#turtle.shapesize" title="turtle.shapesize"><code class="xref py py-func docutils literal"><span class="pre">shapesize()</span></code></a>.</span></li><li><span class="yiyi-st" id="yiyi-453">“noresize”: no adaption of the turtles appearance takes place.</span></li></ul><p><span class="yiyi-st" id="yiyi-454">resizemode(“user”) is called by <a class="reference internal" href="#turtle.shapesize" title="turtle.shapesize"><code class="xref py py-func docutils literal"><span class="pre">shapesize()</span></code></a> when used with arguments.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">resizemode</span><span class="p">()</span>
<span class="go">'noresize'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">resizemode</span><span class="p">(</span><span class="s2">"auto"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">resizemode</span><span class="p">()</span>
<span class="go">'auto'</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.shapesize"><span class="yiyi-st" id="yiyi-455"> <code class="descclassname">turtle.</code><code class="descname">shapesize</code><span class="sig-paren">(</span><em>stretch_wid=None</em>, <em>stretch_len=None</em>, <em>outline=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.turtlesize"><span class="yiyi-st" id="yiyi-456"> <code class="descclassname">turtle.</code><code class="descname">turtlesize</code><span class="sig-paren">(</span><em>stretch_wid=None</em>, <em>stretch_len=None</em>, <em>outline=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-457">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-458"><strong>stretch_wid</strong> positive number</span></li><li><span class="yiyi-st" id="yiyi-459"><strong>stretch_len</strong> positive number</span></li><li><span class="yiyi-st" id="yiyi-460"><strong>outline</strong> positive number</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-461">Return or set the pens attributes x/y-stretchfactors and/or outline. </span><span class="yiyi-st" id="yiyi-462">Set resizemode to “user”. </span><span class="yiyi-st" id="yiyi-463">If and only if resizemode is set to “user”, the turtle will be displayed stretched according to its stretchfactors: <em>stretch_wid</em> is stretchfactor perpendicular to its orientation, <em>stretch_len</em> is stretchfactor in direction of its orientation, <em>outline</em> determines the width of the shapess outline.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">()</span>
<span class="go">(1.0, 1.0, 1)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">resizemode</span><span class="p">(</span><span class="s2">"user"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">12</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">()</span>
<span class="go">(5, 5, 12)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="n">outline</span><span class="o">=</span><span class="mi">8</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">()</span>
<span class="go">(5, 5, 8)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.shearfactor"><span class="yiyi-st" id="yiyi-464"> <code class="descclassname">turtle.</code><code class="descname">shearfactor</code><span class="sig-paren">(</span><em>shear=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-465">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-466"><strong>shear</strong> number (optional)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-467">Set or return the current shearfactor. </span><span class="yiyi-st" id="yiyi-468">Shear the turtleshape according to the given shearfactor shear, which is the tangent of the shear angle. </span><span class="yiyi-st" id="yiyi-469">Do <em>not</em> change the turtles heading (direction of movement). </span><span class="yiyi-st" id="yiyi-470">If shear is not given: return the current shearfactor, i. e. the tangent of the shear angle, by which lines parallel to the heading of the turtle are sheared.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"circle"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shearfactor</span><span class="p">(</span><span class="mf">0.5</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shearfactor</span><span class="p">()</span>
<span class="go">0.5</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.tilt"><span class="yiyi-st" id="yiyi-471"> <code class="descclassname">turtle.</code><code class="descname">tilt</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-472">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-473"><strong>angle</strong> a number</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-474">Rotate the turtleshape by <em>angle</em> from its current tilt-angle, but do <em>not</em> change the turtles heading (direction of movement).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"circle"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">tilt</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">tilt</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.settiltangle"><span class="yiyi-st" id="yiyi-475"> <code class="descclassname">turtle.</code><code class="descname">settiltangle</code><span class="sig-paren">(</span><em>angle</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-476">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-477"><strong>angle</strong> a number</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-478">Rotate the turtleshape to point in the direction specified by <em>angle</em>, regardless of its current tilt-angle. </span><span class="yiyi-st" id="yiyi-479"><em>Do not</em> change the turtles heading (direction of movement).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"circle"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">settiltangle</span><span class="p">(</span><span class="mi">45</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">settiltangle</span><span class="p">(</span><span class="o">-</span><span class="mi">45</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
</code></pre><div class="deprecated"><p><span class="yiyi-st" id="yiyi-480"><span class="versionmodified">Deprecated since version 3.1.</span></span></p></div></dd></dl><dl class="function"><dt id="turtle.tiltangle"><span class="yiyi-st" id="yiyi-481"> <code class="descclassname">turtle.</code><code class="descname">tiltangle</code><span class="sig-paren">(</span><em>angle=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-482">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-483"><strong>angle</strong> a number (optional)</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-484">Set or return the current tilt-angle. </span><span class="yiyi-st" id="yiyi-485">If angle is given, rotate the turtleshape to point in the direction specified by angle, regardless of its current tilt-angle. </span><span class="yiyi-st" id="yiyi-486">Do <em>not</em> change the turtles heading (direction of movement). </span><span class="yiyi-st" id="yiyi-487">If angle is not given: return the current tilt-angle, i. e. the angle between the orientation of the turtleshape and the heading of the turtle (its direction of movement).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"circle"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">tilt</span><span class="p">(</span><span class="mi">45</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">tiltangle</span><span class="p">()</span>
<span class="go">45.0</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.shapetransform"><span class="yiyi-st" id="yiyi-488"> <code class="descclassname">turtle.</code><code class="descname">shapetransform</code><span class="sig-paren">(</span><em>t11=None</em>, <em>t12=None</em>, <em>t21=None</em>, <em>t22=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-489">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-490"><strong>t11</strong> a number (optional)</span></li><li><span class="yiyi-st" id="yiyi-491"><strong>t12</strong> a number (optional)</span></li><li><span class="yiyi-st" id="yiyi-492"><strong>t21</strong> a number (optional)</span></li><li><span class="yiyi-st" id="yiyi-493"><strong>t12</strong> a number (optional)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-494">Set or return the current transformation matrix of the turtle shape.</span></p><p><span class="yiyi-st" id="yiyi-495">If none of the matrix elements are given, return the transformation matrix as a tuple of 4 elements. </span><span class="yiyi-st" id="yiyi-496">Otherwise set the given elements and transform the turtleshape according to the matrix consisting of first row t11, t12 and second row t21, 22. </span><span class="yiyi-st" id="yiyi-497">The determinant t11 * t22 - t12 * t21 must not be zero, otherwise an error is raised. </span><span class="yiyi-st" id="yiyi-498">Modify stretchfactor, shearfactor and tiltangle according to the given matrix.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span> <span class="o">=</span> <span class="n">Turtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"square"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapesize</span><span class="p">(</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shearfactor</span><span class="p">(</span><span class="o">-</span><span class="mf">0.5</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapetransform</span><span class="p">()</span>
<span class="go">(4.0, -1.0, -0.0, 2.0)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.get_shapepoly"><span class="yiyi-st" id="yiyi-499"> <code class="descclassname">turtle.</code><code class="descname">get_shapepoly</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-500">Return the current shape polygon as tuple of coordinate pairs. </span><span class="yiyi-st" id="yiyi-501">This can be used to define a new shape or components of a compound shape.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shape</span><span class="p">(</span><span class="s2">"square"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">shapetransform</span><span class="p">(</span><span class="mi">4</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">get_shapepoly</span><span class="p">()</span>
<span class="go">((50, -20), (30, 20), (-50, 20), (-30, -20))</span>
</code></pre></dd></dl></div></div><div class="section" id="using-events"><h3><span class="yiyi-st" id="yiyi-502">24.1.3.6. </span><span class="yiyi-st" id="yiyi-503">Using events</span></h3><dl class="function"><dt id="turtle.onclick"><span class="yiyi-st" id="yiyi-504"> <code class="descclassname">turtle.</code><code class="descname">onclick</code><span class="sig-paren">(</span><em>fun</em>, <em>btn=1</em>, <em>add=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-505">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-506"><strong>fun</strong> a function with two arguments which will be called with the coordinates of the clicked point on the canvas</span></li><li><span class="yiyi-st" id="yiyi-507"><strong>num</strong> number of the mouse-button, defaults to 1 (left mouse button)</span></li><li><span class="yiyi-st" id="yiyi-508"><strong>add</strong> <code class="docutils literal"><span class="pre">True</span></code> or <code class="docutils literal"><span class="pre">False</span></code> if <code class="docutils literal"><span class="pre">True</span></code>, a new binding will be added, otherwise it will replace a former binding</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-509">Bind <em>fun</em> to mouse-click events on this turtle. </span><span class="yiyi-st" id="yiyi-510">If <em>fun</em> is <code class="docutils literal"><span class="pre">None</span></code>, existing bindings are removed. </span><span class="yiyi-st" id="yiyi-511">Example for the anonymous turtle, i.e. </span><span class="yiyi-st" id="yiyi-512">the procedural way:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">def</span> <span class="nf">turn</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">left</span><span class="p">(</span><span class="mi">180</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">onclick</span><span class="p">(</span><span class="n">turn</span><span class="p">)</span> <span class="c1"># Now clicking into the turtle will turn it.</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">onclick</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span> <span class="c1"># event-binding will be removed</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.onrelease"><span class="yiyi-st" id="yiyi-513"> <code class="descclassname">turtle.</code><code class="descname">onrelease</code><span class="sig-paren">(</span><em>fun</em>, <em>btn=1</em>, <em>add=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-514">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-515"><strong>fun</strong> a function with two arguments which will be called with the coordinates of the clicked point on the canvas</span></li><li><span class="yiyi-st" id="yiyi-516"><strong>num</strong> number of the mouse-button, defaults to 1 (left mouse button)</span></li><li><span class="yiyi-st" id="yiyi-517"><strong>add</strong> <code class="docutils literal"><span class="pre">True</span></code> or <code class="docutils literal"><span class="pre">False</span></code> if <code class="docutils literal"><span class="pre">True</span></code>, a new binding will be added, otherwise it will replace a former binding</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-518">Bind <em>fun</em> to mouse-button-release events on this turtle. </span><span class="yiyi-st" id="yiyi-519">If <em>fun</em> is <code class="docutils literal"><span class="pre">None</span></code>, existing bindings are removed.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">MyTurtle</span><span class="p">(</span><span class="n">Turtle</span><span class="p">):</span>
<span class="gp">... </span> <span class="k">def</span> <span class="nf">glow</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">):</span>
<span class="gp">... </span> <span class="bp">self</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">(</span><span class="s2">"red"</span><span class="p">)</span>
<span class="gp">... </span> <span class="k">def</span> <span class="nf">unglow</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">):</span>
<span class="gp">... </span> <span class="bp">self</span><span class="o">.</span><span class="n">fillcolor</span><span class="p">(</span><span class="s2">""</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span> <span class="o">=</span> <span class="n">MyTurtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">onclick</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">glow</span><span class="p">)</span> <span class="c1"># clicking on turtle turns fillcolor red,</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">onrelease</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">unglow</span><span class="p">)</span> <span class="c1"># releasing turns it to transparent.</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.ondrag"><span class="yiyi-st" id="yiyi-520"> <code class="descclassname">turtle.</code><code class="descname">ondrag</code><span class="sig-paren">(</span><em>fun</em>, <em>btn=1</em>, <em>add=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-521">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-522"><strong>fun</strong> a function with two arguments which will be called with the coordinates of the clicked point on the canvas</span></li><li><span class="yiyi-st" id="yiyi-523"><strong>num</strong> number of the mouse-button, defaults to 1 (left mouse button)</span></li><li><span class="yiyi-st" id="yiyi-524"><strong>add</strong> <code class="docutils literal"><span class="pre">True</span></code> or <code class="docutils literal"><span class="pre">False</span></code> if <code class="docutils literal"><span class="pre">True</span></code>, a new binding will be added, otherwise it will replace a former binding</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-525">Bind <em>fun</em> to mouse-move events on this turtle. </span><span class="yiyi-st" id="yiyi-526">If <em>fun</em> is <code class="docutils literal"><span class="pre">None</span></code>, existing bindings are removed.</span></p><p><span class="yiyi-st" id="yiyi-527">Remark: Every sequence of mouse-move-events on a turtle is preceded by a mouse-click event on that turtle.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">ondrag</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">goto</span><span class="p">)</span>
</code></pre><p><span class="yiyi-st" id="yiyi-528">Subsequently, clicking and dragging the Turtle will move it across the screen thereby producing handdrawings (if pen is down).</span></p></dd></dl></div><div class="section" id="special-turtle-methods"><h3><span class="yiyi-st" id="yiyi-529">24.1.3.7. </span><span class="yiyi-st" id="yiyi-530">Special Turtle methods</span></h3><dl class="function"><dt id="turtle.begin_poly"><span class="yiyi-st" id="yiyi-531"> <code class="descclassname">turtle.</code><code class="descname">begin_poly</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-532">Start recording the vertices of a polygon. </span><span class="yiyi-st" id="yiyi-533">Current turtle position is first vertex of polygon.</span></p></dd></dl><dl class="function"><dt id="turtle.end_poly"><span class="yiyi-st" id="yiyi-534"> <code class="descclassname">turtle.</code><code class="descname">end_poly</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-535">Stop recording the vertices of a polygon. </span><span class="yiyi-st" id="yiyi-536">Current turtle position is last vertex of polygon. </span><span class="yiyi-st" id="yiyi-537">This will be connected with the first vertex.</span></p></dd></dl><dl class="function"><dt id="turtle.get_poly"><span class="yiyi-st" id="yiyi-538"> <code class="descclassname">turtle.</code><code class="descname">get_poly</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-539">Return the last recorded polygon.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">home</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">begin_poly</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">left</span><span class="p">(</span><span class="mi">60</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">end_poly</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">p</span> <span class="o">=</span> <span class="n">turtle</span><span class="o">.</span><span class="n">get_poly</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">register_shape</span><span class="p">(</span><span class="s2">"myFavouriteShape"</span><span class="p">,</span> <span class="n">p</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.clone"><span class="yiyi-st" id="yiyi-540"> <code class="descclassname">turtle.</code><code class="descname">clone</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-541">Create and return a clone of the turtle with same position, heading and turtle properties.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">mick</span> <span class="o">=</span> <span class="n">Turtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">joe</span> <span class="o">=</span> <span class="n">mick</span><span class="o">.</span><span class="n">clone</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.getturtle"><span class="yiyi-st" id="yiyi-542"> <code class="descclassname">turtle.</code><code class="descname">getturtle</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.getpen"><span class="yiyi-st" id="yiyi-543"> <code class="descclassname">turtle.</code><code class="descname">getpen</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-544">Return the Turtle object itself. </span><span class="yiyi-st" id="yiyi-545">Only reasonable use: as a function to return the “anonymous turtle”:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">pet</span> <span class="o">=</span> <span class="n">getturtle</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">pet</span><span class="o">.</span><span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">pet</span>
<span class="go">&lt;turtle.Turtle object at 0x...&gt;</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.getscreen"><span class="yiyi-st" id="yiyi-546"> <code class="descclassname">turtle.</code><code class="descname">getscreen</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-547">Return the <a class="reference internal" href="#turtle.TurtleScreen" title="turtle.TurtleScreen"><code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code></a> object the turtle is drawing on. </span><span class="yiyi-st" id="yiyi-548">TurtleScreen methods can then be called for that object.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">ts</span> <span class="o">=</span> <span class="n">turtle</span><span class="o">.</span><span class="n">getscreen</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">ts</span>
<span class="go">&lt;turtle._Screen object at 0x...&gt;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">ts</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">(</span><span class="s2">"pink"</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.setundobuffer"><span class="yiyi-st" id="yiyi-549"> <code class="descclassname">turtle.</code><code class="descname">setundobuffer</code><span class="sig-paren">(</span><em>size</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-550">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-551"><strong>size</strong> an integer or <code class="docutils literal"><span class="pre">None</span></code></span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-552">Set or disable undobuffer. </span><span class="yiyi-st" id="yiyi-553">If <em>size</em> is an integer an empty undobuffer of given size is installed. </span><span class="yiyi-st" id="yiyi-554"><em>size</em> gives the maximum number of turtle actions that can be undone by the <a class="reference internal" href="#turtle.undo" title="turtle.undo"><code class="xref py py-func docutils literal"><span class="pre">undo()</span></code></a> method/function. </span><span class="yiyi-st" id="yiyi-555">If <em>size</em> is <code class="docutils literal"><span class="pre">None</span></code>, the undobuffer is disabled.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">setundobuffer</span><span class="p">(</span><span class="mi">42</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.undobufferentries"><span class="yiyi-st" id="yiyi-556"> <code class="descclassname">turtle.</code><code class="descname">undobufferentries</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-557">Return number of entries in the undobuffer.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">while</span> <span class="n">undobufferentries</span><span class="p">():</span>
<span class="gp">... </span> <span class="n">undo</span><span class="p">()</span>
</code></pre></dd></dl></div><div class="section" id="compound-shapes"><h3><span class="yiyi-st" id="yiyi-558">24.1.3.8. </span><span class="yiyi-st" id="yiyi-559">Compound shapes</span></h3><p><span class="yiyi-st" id="yiyi-560">To use compound turtle shapes, which consist of several polygons of different color, you must use the helper class <a class="reference internal" href="#turtle.Shape" title="turtle.Shape"><code class="xref py py-class docutils literal"><span class="pre">Shape</span></code></a> explicitly as described below:</span></p><ol class="arabic"><li><p class="first"><span class="yiyi-st" id="yiyi-561">Create an empty Shape object of type “compound”.</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-562">Add as many components to this object as desired, using the <code class="xref py py-meth docutils literal"><span class="pre">addcomponent()</span></code> method.</span></p><p><span class="yiyi-st" id="yiyi-563">For example:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">s</span> <span class="o">=</span> <span class="n">Shape</span><span class="p">(</span><span class="s2">"compound"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">poly1</span> <span class="o">=</span> <span class="p">((</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">),(</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">),(</span><span class="mi">0</span><span class="p">,</span><span class="mi">10</span><span class="p">),(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">))</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">s</span><span class="o">.</span><span class="n">addcomponent</span><span class="p">(</span><span class="n">poly1</span><span class="p">,</span> <span class="s2">"red"</span><span class="p">,</span> <span class="s2">"blue"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">poly2</span> <span class="o">=</span> <span class="p">((</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">),(</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">),(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">))</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">s</span><span class="o">.</span><span class="n">addcomponent</span><span class="p">(</span><span class="n">poly2</span><span class="p">,</span> <span class="s2">"blue"</span><span class="p">,</span> <span class="s2">"red"</span><span class="p">)</span>
</code></pre></li><li><p class="first"><span class="yiyi-st" id="yiyi-564">Now add the Shape to the Screens shapelist and use it:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">register_shape</span><span class="p">(</span><span class="s2">"myshape"</span><span class="p">,</span> <span class="n">s</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">shape</span><span class="p">(</span><span class="s2">"myshape"</span><span class="p">)</span>
</code></pre></li></ol><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-565">Note</span></p><p class="last"><span class="yiyi-st" id="yiyi-566">The <a class="reference internal" href="#turtle.Shape" title="turtle.Shape"><code class="xref py py-class docutils literal"><span class="pre">Shape</span></code></a> class is used internally by the <a class="reference internal" href="#turtle.register_shape" title="turtle.register_shape"><code class="xref py py-func docutils literal"><span class="pre">register_shape()</span></code></a> method in different ways. </span><span class="yiyi-st" id="yiyi-567">The application programmer has to deal with the Shape class <em>only</em> when using compound shapes like shown above!</span></p></div></div></div><div class="section" id="methods-of-turtlescreen-screen-and-corresponding-functions"><h2><span class="yiyi-st" id="yiyi-568">24.1.4. </span><span class="yiyi-st" id="yiyi-569">Methods of TurtleScreen/Screen and corresponding functions</span></h2><p><span class="yiyi-st" id="yiyi-570">Most of the examples in this section refer to a TurtleScreen instance called <code class="docutils literal"><span class="pre">screen</span></code>.</span></p><div class="section" id="window-control"><h3><span class="yiyi-st" id="yiyi-571">24.1.4.1. </span><span class="yiyi-st" id="yiyi-572">Window control</span></h3><dl class="function"><dt id="turtle.bgcolor"><span class="yiyi-st" id="yiyi-573"> <code class="descclassname">turtle.</code><code class="descname">bgcolor</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-574">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-575"><strong>args</strong> a color string or three numbers in the range 0..colormode or a 3-tuple of such numbers</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-576">Set or return background color of the TurtleScreen.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">(</span><span class="s2">"orange"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">()</span>
<span class="go">'orange'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">(</span><span class="s2">"#800080"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">()</span>
<span class="go">(128.0, 0.0, 128.0)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.bgpic"><span class="yiyi-st" id="yiyi-577"> <code class="descclassname">turtle.</code><code class="descname">bgpic</code><span class="sig-paren">(</span><em>picname=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-578">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-579"><strong>picname</strong> a string, name of a gif-file or <code class="docutils literal"><span class="pre">"nopic"</span></code>, or <code class="docutils literal"><span class="pre">None</span></code></span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-580">Set background image or return name of current backgroundimage. </span><span class="yiyi-st" id="yiyi-581">If <em>picname</em> is a filename, set the corresponding image as background. </span><span class="yiyi-st" id="yiyi-582">If <em>picname</em> is <code class="docutils literal"><span class="pre">"nopic"</span></code>, delete background image, if present. </span><span class="yiyi-st" id="yiyi-583">If <em>picname</em> is <code class="docutils literal"><span class="pre">None</span></code>, return the filename of the current backgroundimage.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgpic</span><span class="p">()</span>
<span class="go">'nopic'</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgpic</span><span class="p">(</span><span class="s2">"landscape.gif"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">bgpic</span><span class="p">()</span>
<span class="go">"landscape.gif"</span>
</code></pre></dd></dl><dl class="function"><dt><span class="yiyi-st" id="yiyi-584"> <code class="descclassname">turtle.</code><code class="descname">clear</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.clearscreen"><span class="yiyi-st" id="yiyi-585"> <code class="descclassname">turtle.</code><code class="descname">clearscreen</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-586">Delete all drawings and all turtles from the TurtleScreen. </span><span class="yiyi-st" id="yiyi-587">Reset the now empty TurtleScreen to its initial state: white background, no background image, no event bindings and tracing on.</span></p><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-588">Note</span></p><p class="last"><span class="yiyi-st" id="yiyi-589">This TurtleScreen method is available as a global function only under the name <code class="docutils literal"><span class="pre">clearscreen</span></code>. </span><span class="yiyi-st" id="yiyi-590">The global function <code class="docutils literal"><span class="pre">clear</span></code> is a different one derived from the Turtle method <code class="docutils literal"><span class="pre">clear</span></code>.</span></p></div></dd></dl><dl class="function"><dt><span class="yiyi-st" id="yiyi-591"> <code class="descclassname">turtle.</code><code class="descname">reset</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.resetscreen"><span class="yiyi-st" id="yiyi-592"> <code class="descclassname">turtle.</code><code class="descname">resetscreen</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-593">Reset all Turtles on the Screen to their initial state.</span></p><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-594">Note</span></p><p class="last"><span class="yiyi-st" id="yiyi-595">This TurtleScreen method is available as a global function only under the name <code class="docutils literal"><span class="pre">resetscreen</span></code>. </span><span class="yiyi-st" id="yiyi-596">The global function <code class="docutils literal"><span class="pre">reset</span></code> is another one derived from the Turtle method <code class="docutils literal"><span class="pre">reset</span></code>.</span></p></div></dd></dl><dl class="function"><dt id="turtle.screensize"><span class="yiyi-st" id="yiyi-597"> <code class="descclassname">turtle.</code><code class="descname">screensize</code><span class="sig-paren">(</span><em>canvwidth=None</em>, <em>canvheight=None</em>, <em>bg=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-598">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-599"><strong>canvwidth</strong> positive integer, new width of canvas in pixels</span></li><li><span class="yiyi-st" id="yiyi-600"><strong>canvheight</strong> positive integer, new height of canvas in pixels</span></li><li><span class="yiyi-st" id="yiyi-601"><strong>bg</strong> colorstring or color-tuple, new background color</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-602">If no arguments are given, return current (canvaswidth, canvasheight). </span><span class="yiyi-st" id="yiyi-603">Else resize the canvas the turtles are drawing on. </span><span class="yiyi-st" id="yiyi-604">Do not alter the drawing window. </span><span class="yiyi-st" id="yiyi-605">To observe hidden parts of the canvas, use the scrollbars. </span><span class="yiyi-st" id="yiyi-606">With this method, one can make visible those parts of a drawing which were outside the canvas before.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">screensize</span><span class="p">()</span>
<span class="go">(400, 300)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">screensize</span><span class="p">(</span><span class="mi">2000</span><span class="p">,</span><span class="mi">1500</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">screensize</span><span class="p">()</span>
<span class="go">(2000, 1500)</span>
</code></pre><p><span class="yiyi-st" id="yiyi-607">e.g. </span><span class="yiyi-st" id="yiyi-608">to search for an erroneously escaped turtle ;-)</span></p></dd></dl><dl class="function"><dt id="turtle.setworldcoordinates"><span class="yiyi-st" id="yiyi-609"> <code class="descclassname">turtle.</code><code class="descname">setworldcoordinates</code><span class="sig-paren">(</span><em>llx</em>, <em>lly</em>, <em>urx</em>, <em>ury</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-610">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-611"><strong>llx</strong> a number, x-coordinate of lower left corner of canvas</span></li><li><span class="yiyi-st" id="yiyi-612"><strong>lly</strong> a number, y-coordinate of lower left corner of canvas</span></li><li><span class="yiyi-st" id="yiyi-613"><strong>urx</strong> a number, x-coordinate of upper right corner of canvas</span></li><li><span class="yiyi-st" id="yiyi-614"><strong>ury</strong> a number, y-coordinate of upper right corner of canvas</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-615">Set up user-defined coordinate system and switch to mode “world” if necessary. </span><span class="yiyi-st" id="yiyi-616">This performs a <code class="docutils literal"><span class="pre">screen.reset()</span></code>. </span><span class="yiyi-st" id="yiyi-617">If mode “world” is already active, all drawings are redrawn according to the new coordinates.</span></p><p><span class="yiyi-st" id="yiyi-618"><strong>ATTENTION</strong>: in user-defined coordinate systems angles may appear distorted.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">setworldcoordinates</span><span class="p">(</span><span class="o">-</span><span class="mi">50</span><span class="p">,</span><span class="o">-</span><span class="mf">7.5</span><span class="p">,</span><span class="mi">50</span><span class="p">,</span><span class="mf">7.5</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">_</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">72</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">left</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">_</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">8</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">left</span><span class="p">(</span><span class="mi">45</span><span class="p">);</span> <span class="n">fd</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span> <span class="c1"># a regular octagon</span>
</code></pre></dd></dl></div><div class="section" id="animation-control"><h3><span class="yiyi-st" id="yiyi-619">24.1.4.2. </span><span class="yiyi-st" id="yiyi-620">Animation control</span></h3><dl class="function"><dt id="turtle.delay"><span class="yiyi-st" id="yiyi-621"> <code class="descclassname">turtle.</code><code class="descname">delay</code><span class="sig-paren">(</span><em>delay=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-622">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-623"><strong>delay</strong> positive integer</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-624">Set or return the drawing <em>delay</em> in milliseconds. </span><span class="yiyi-st" id="yiyi-625">(This is approximately the time interval between two consecutive canvas updates.) </span><span class="yiyi-st" id="yiyi-626">The longer the drawing delay, the slower the animation.</span></p><p><span class="yiyi-st" id="yiyi-627">Optional argument:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">delay</span><span class="p">()</span>
<span class="go">10</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">delay</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">delay</span><span class="p">()</span>
<span class="go">5</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.tracer"><span class="yiyi-st" id="yiyi-628"> <code class="descclassname">turtle.</code><code class="descname">tracer</code><span class="sig-paren">(</span><em>n=None</em>, <em>delay=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-629">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-630"><strong>n</strong> nonnegative integer</span></li><li><span class="yiyi-st" id="yiyi-631"><strong>delay</strong> nonnegative integer</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-632">打开/关闭乌龟动画并为更新图纸设置延迟。</span><span class="yiyi-st" id="yiyi-633">If <em>n</em> is given, only each n-th regular screen update is really performed. </span><span class="yiyi-st" id="yiyi-634">(可用于加速复杂图形的绘制。)</span><span class="yiyi-st" id="yiyi-635">When called without arguments, returns the currently stored value of n. Second argument sets delay value (see <a class="reference internal" href="#turtle.delay" title="turtle.delay"><code class="xref py py-func docutils literal"><span class="pre">delay()</span></code></a>).</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">tracer</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">25</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">dist</span> <span class="o">=</span> <span class="mi">2</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">200</span><span class="p">):</span>
<span class="gp">... </span> <span class="n">fd</span><span class="p">(</span><span class="n">dist</span><span class="p">)</span>
<span class="gp">... </span> <span class="n">rt</span><span class="p">(</span><span class="mi">90</span><span class="p">)</span>
<span class="gp">... </span> <span class="n">dist</span> <span class="o">+=</span> <span class="mi">2</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.update"><span class="yiyi-st" id="yiyi-636"> <code class="descclassname">turtle.</code><code class="descname">update</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-637">Perform a TurtleScreen update. </span><span class="yiyi-st" id="yiyi-638">To be used when tracer is turned off.</span></p></dd></dl><p><span class="yiyi-st" id="yiyi-639">See also the RawTurtle/Turtle method <a class="reference internal" href="#turtle.speed" title="turtle.speed"><code class="xref py py-func docutils literal"><span class="pre">speed()</span></code></a>.</span></p></div><div class="section" id="using-screen-events"><h3><span class="yiyi-st" id="yiyi-640">24.1.4.3. </span><span class="yiyi-st" id="yiyi-641">Using screen events</span></h3><dl class="function"><dt id="turtle.listen"><span class="yiyi-st" id="yiyi-642"> <code class="descclassname">turtle.</code><code class="descname">listen</code><span class="sig-paren">(</span><em>xdummy=None</em>, <em>ydummy=None</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-643">Set focus on TurtleScreen (in order to collect key-events). </span><span class="yiyi-st" id="yiyi-644">Dummy arguments are provided in order to be able to pass <a class="reference internal" href="#turtle.listen" title="turtle.listen"><code class="xref py py-func docutils literal"><span class="pre">listen()</span></code></a> to the onclick method.</span></p></dd></dl><dl class="function"><dt id="turtle.onkey"><span class="yiyi-st" id="yiyi-645"> <code class="descclassname">turtle.</code><code class="descname">onkey</code><span class="sig-paren">(</span><em>fun</em>, <em>key</em><span class="sig-paren">)</span></span></dt><dt id="turtle.onkeyrelease"><span class="yiyi-st" id="yiyi-646"> <code class="descclassname">turtle.</code><code class="descname">onkeyrelease</code><span class="sig-paren">(</span><em>fun</em>, <em>key</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-647">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-648"><strong>fun</strong> a function with no arguments or <code class="docutils literal"><span class="pre">None</span></code></span></li><li><span class="yiyi-st" id="yiyi-649"><strong>key</strong> a string: key (e.g. </span><span class="yiyi-st" id="yiyi-650">“a”) or key-symbol (e.g. </span><span class="yiyi-st" id="yiyi-651">“space”)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-652">Bind <em>fun</em> to key-release event of key. </span><span class="yiyi-st" id="yiyi-653">If <em>fun</em> is <code class="docutils literal"><span class="pre">None</span></code>, event bindings are removed. </span><span class="yiyi-st" id="yiyi-654">Remark: in order to be able to register key-events, TurtleScreen must have the focus. </span><span class="yiyi-st" id="yiyi-655">(See method <a class="reference internal" href="#turtle.listen" title="turtle.listen"><code class="xref py py-func docutils literal"><span class="pre">listen()</span></code></a>.)</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">def</span> <span class="nf">f</span><span class="p">():</span>
<span class="gp">... </span> <span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">... </span> <span class="n">lt</span><span class="p">(</span><span class="mi">60</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">onkey</span><span class="p">(</span><span class="n">f</span><span class="p">,</span> <span class="s2">"Up"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">listen</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.onkeypress"><span class="yiyi-st" id="yiyi-656"> <code class="descclassname">turtle.</code><code class="descname">onkeypress</code><span class="sig-paren">(</span><em>fun</em>, <em>key=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-657">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-658"><strong>fun</strong> a function with no arguments or <code class="docutils literal"><span class="pre">None</span></code></span></li><li><span class="yiyi-st" id="yiyi-659"><strong>key</strong> a string: key (e.g. </span><span class="yiyi-st" id="yiyi-660">“a”) or key-symbol (e.g. </span><span class="yiyi-st" id="yiyi-661">“space”)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-662">Bind <em>fun</em> to key-press event of key if key is given, or to any key-press-event if no key is given. </span><span class="yiyi-st" id="yiyi-663">Remark: in order to be able to register key-events, TurtleScreen must have focus. </span><span class="yiyi-st" id="yiyi-664">(See method <a class="reference internal" href="#turtle.listen" title="turtle.listen"><code class="xref py py-func docutils literal"><span class="pre">listen()</span></code></a>.)</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">def</span> <span class="nf">f</span><span class="p">():</span>
<span class="gp">... </span> <span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">onkey</span><span class="p">(</span><span class="n">f</span><span class="p">,</span> <span class="s2">"Up"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">listen</span><span class="p">()</span>
</code></pre></dd></dl><dl class="function"><dt><span class="yiyi-st" id="yiyi-665"> <code class="descclassname">turtle.</code><code class="descname">onclick</code><span class="sig-paren">(</span><em>fun</em>, <em>btn=1</em>, <em>add=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.onscreenclick"><span class="yiyi-st" id="yiyi-666"> <code class="descclassname">turtle.</code><code class="descname">onscreenclick</code><span class="sig-paren">(</span><em>fun</em>, <em>btn=1</em>, <em>add=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-667">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-668"><strong>fun</strong> a function with two arguments which will be called with the coordinates of the clicked point on the canvas</span></li><li><span class="yiyi-st" id="yiyi-669"><strong>num</strong> number of the mouse-button, defaults to 1 (left mouse button)</span></li><li><span class="yiyi-st" id="yiyi-670"><strong>add</strong> <code class="docutils literal"><span class="pre">True</span></code> or <code class="docutils literal"><span class="pre">False</span></code> if <code class="docutils literal"><span class="pre">True</span></code>, a new binding will be added, otherwise it will replace a former binding</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-671">Bind <em>fun</em> to mouse-click events on this screen. </span><span class="yiyi-st" id="yiyi-672">If <em>fun</em> is <code class="docutils literal"><span class="pre">None</span></code>, existing bindings are removed.</span></p><p><span class="yiyi-st" id="yiyi-673">Example for a TurtleScreen instance named <code class="docutils literal"><span class="pre">screen</span></code> and a Turtle instance named turtle:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">onclick</span><span class="p">(</span><span class="n">turtle</span><span class="o">.</span><span class="n">goto</span><span class="p">)</span> <span class="c1"># Subsequently clicking into the TurtleScreen will</span>
<span class="gp">&gt;&gt;&gt; </span> <span class="c1"># make the turtle move to the clicked point.</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">onclick</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span> <span class="c1"># remove event binding again</span>
</code></pre><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-674">Note</span></p><p class="last"><span class="yiyi-st" id="yiyi-675">This TurtleScreen method is available as a global function only under the name <code class="docutils literal"><span class="pre">onscreenclick</span></code>. </span><span class="yiyi-st" id="yiyi-676">The global function <code class="docutils literal"><span class="pre">onclick</span></code> is another one derived from the Turtle method <code class="docutils literal"><span class="pre">onclick</span></code>.</span></p></div></dd></dl><dl class="function"><dt id="turtle.ontimer"><span class="yiyi-st" id="yiyi-677"> <code class="descclassname">turtle.</code><code class="descname">ontimer</code><span class="sig-paren">(</span><em>fun</em>, <em>t=0</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-678">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-679"><strong>fun</strong> a function with no arguments</span></li><li><span class="yiyi-st" id="yiyi-680"><strong>t</strong> a number &gt;= 0</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-681">Install a timer that calls <em>fun</em> after <em>t</em> milliseconds.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">running</span> <span class="o">=</span> <span class="kc">True</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">def</span> <span class="nf">f</span><span class="p">():</span>
<span class="gp">... </span> <span class="k">if</span> <span class="n">running</span><span class="p">:</span>
<span class="gp">... </span> <span class="n">fd</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
<span class="gp">... </span> <span class="n">lt</span><span class="p">(</span><span class="mi">60</span><span class="p">)</span>
<span class="gp">... </span> <span class="n">screen</span><span class="o">.</span><span class="n">ontimer</span><span class="p">(</span><span class="n">f</span><span class="p">,</span> <span class="mi">250</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">f</span><span class="p">()</span> <span class="c1">### makes the turtle march around</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">running</span> <span class="o">=</span> <span class="kc">False</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.mainloop"><span class="yiyi-st" id="yiyi-682"> <code class="descclassname">turtle.</code><code class="descname">mainloop</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dt id="turtle.done"><span class="yiyi-st" id="yiyi-683"> <code class="descclassname">turtle.</code><code class="descname">done</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-684">开始事件循环 - 调用Tkinter的mainloop函数。</span><span class="yiyi-st" id="yiyi-685">必须是乌龟图形程序中的最后一个语句。</span><span class="yiyi-st" id="yiyi-686">Must <em>not</em> be used if a script is run from within IDLE in -n mode (No subprocess) - for interactive use of turtle graphics.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">mainloop</span><span class="p">()</span>
</code></pre></dd></dl></div><div class="section" id="input-methods"><h3><span class="yiyi-st" id="yiyi-687">24.1.4.4. </span><span class="yiyi-st" id="yiyi-688">Input methods</span></h3><dl class="function"><dt id="turtle.textinput"><span class="yiyi-st" id="yiyi-689"> <code class="descclassname">turtle.</code><code class="descname">textinput</code><span class="sig-paren">(</span><em>title</em>, <em>prompt</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-690">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-691"><strong>title</strong> string</span></li><li><span class="yiyi-st" id="yiyi-692"><strong>prompt</strong> string</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-693">Pop up a dialog window for input of a string. </span><span class="yiyi-st" id="yiyi-694">Parameter title is the title of the dialog window, propmt is a text mostly describing what information to input. </span><span class="yiyi-st" id="yiyi-695">Return the string input. </span><span class="yiyi-st" id="yiyi-696">If the dialog is canceled, return None.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">textinput</span><span class="p">(</span><span class="s2">"NIM"</span><span class="p">,</span> <span class="s2">"Name of first player:"</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.numinput"><span class="yiyi-st" id="yiyi-697"> <code class="descclassname">turtle.</code><code class="descname">numinput</code><span class="sig-paren">(</span><em>title</em>, <em>prompt</em>, <em>default=None</em>, <em>minval=None</em>, <em>maxval=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-698">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-699"><strong>title</strong> string</span></li><li><span class="yiyi-st" id="yiyi-700"><strong>prompt</strong> string</span></li><li><span class="yiyi-st" id="yiyi-701"><strong>default</strong> number (optional)</span></li><li><span class="yiyi-st" id="yiyi-702"><strong>minval</strong> number (optional)</span></li><li><span class="yiyi-st" id="yiyi-703"><strong>maxval</strong> number (optional)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-704">Pop up a dialog window for input of a number. </span><span class="yiyi-st" id="yiyi-705">title is the title of the dialog window, prompt is a text mostly describing what numerical information to input. </span><span class="yiyi-st" id="yiyi-706">default: default value, minval: minimum value for input, maxval: maximum value for input The number input must be in the range minval .. maxval if these are given. </span><span class="yiyi-st" id="yiyi-707">If not, a hint is issued and the dialog remains open for correction. </span><span class="yiyi-st" id="yiyi-708">Return the number input. </span><span class="yiyi-st" id="yiyi-709">If the dialog is canceled, return None.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">numinput</span><span class="p">(</span><span class="s2">"Poker"</span><span class="p">,</span> <span class="s2">"Your stakes:"</span><span class="p">,</span> <span class="mi">1000</span><span class="p">,</span> <span class="n">minval</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">maxval</span><span class="o">=</span><span class="mi">10000</span><span class="p">)</span>
</code></pre></dd></dl></div><div class="section" id="settings-and-special-methods"><h3><span class="yiyi-st" id="yiyi-710">24.1.4.5. </span><span class="yiyi-st" id="yiyi-711">Settings and special methods</span></h3><dl class="function"><dt id="turtle.mode"><span class="yiyi-st" id="yiyi-712"> <code class="descclassname">turtle.</code><code class="descname">mode</code><span class="sig-paren">(</span><em>mode=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-713">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-714"><strong>mode</strong> one of the strings “standard”, “logo” or “world”</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-715">Set turtle mode (“standard”, “logo” or “world”) and perform reset. </span><span class="yiyi-st" id="yiyi-716">If mode is not given, current mode is returned.</span></p><p><span class="yiyi-st" id="yiyi-717">Mode “standard” is compatible with old <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a>. </span><span class="yiyi-st" id="yiyi-718">Mode “logo” is compatible with most Logo turtle graphics. </span><span class="yiyi-st" id="yiyi-719">Mode “world” uses user-defined “world coordinates”. </span><span class="yiyi-st" id="yiyi-720"><strong>Attention</strong>: in this mode angles appear distorted if <code class="docutils literal"><span class="pre">x/y</span></code> unit-ratio doesnt equal 1.</span></p><table border="1" class="docutils"><thead valign="bottom"><tr class="row-odd"><th class="head"><span class="yiyi-st" id="yiyi-721">Mode</span></th><th class="head"><span class="yiyi-st" id="yiyi-722">Initial turtle heading</span></th><th class="head"><span class="yiyi-st" id="yiyi-723">positive angles</span></th></tr></thead><tbody valign="top"><tr class="row-even"><td><span class="yiyi-st" id="yiyi-724">“standard”</span></td><td><span class="yiyi-st" id="yiyi-725">to the right (east)</span></td><td><span class="yiyi-st" id="yiyi-726">counterclockwise</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-727">“logo”</span></td><td><span class="yiyi-st" id="yiyi-728">upward (north)</span></td><td><span class="yiyi-st" id="yiyi-729">clockwise</span></td></tr></tbody></table><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">mode</span><span class="p">(</span><span class="s2">"logo"</span><span class="p">)</span> <span class="c1"># resets turtle heading to north</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">mode</span><span class="p">()</span>
<span class="go">'logo'</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.colormode"><span class="yiyi-st" id="yiyi-730"> <code class="descclassname">turtle.</code><code class="descname">colormode</code><span class="sig-paren">(</span><em>cmode=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-731">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-732"><strong>cmode</strong> one of the values 1.0 or 255</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-733">返回colormode或将其设置为1.0或255。</span><span class="yiyi-st" id="yiyi-734">随后颜色三元组的<em>r</em><em>g</em><em>b</em>值必须在0 .. <em>cmode</em>范围内。</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">colormode</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">(</span><span class="mi">240</span><span class="p">,</span> <span class="mi">160</span><span class="p">,</span> <span class="mi">80</span><span class="p">)</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="o">...</span>
<span class="gr">TurtleGraphicsError</span>: <span class="n">bad color sequence: (240, 160, 80)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">colormode</span><span class="p">()</span>
<span class="go">1.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">colormode</span><span class="p">(</span><span class="mi">255</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">colormode</span><span class="p">()</span>
<span class="go">255</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">turtle</span><span class="o">.</span><span class="n">pencolor</span><span class="p">(</span><span class="mi">240</span><span class="p">,</span><span class="mi">160</span><span class="p">,</span><span class="mi">80</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.getcanvas"><span class="yiyi-st" id="yiyi-735"> <code class="descclassname">turtle.</code><code class="descname">getcanvas</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-736">Return the Canvas of this TurtleScreen. </span><span class="yiyi-st" id="yiyi-737">Useful for insiders who know what to do with a Tkinter Canvas.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">cv</span> <span class="o">=</span> <span class="n">screen</span><span class="o">.</span><span class="n">getcanvas</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">cv</span>
<span class="go">&lt;turtle.ScrolledCanvas object ...&gt;</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.getshapes"><span class="yiyi-st" id="yiyi-738"> <code class="descclassname">turtle.</code><code class="descname">getshapes</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-739">Return a list of names of all currently available turtle shapes.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">getshapes</span><span class="p">()</span>
<span class="go">['arrow', 'blank', 'circle', ..., 'turtle']</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.register_shape"><span class="yiyi-st" id="yiyi-740"> <code class="descclassname">turtle.</code><code class="descname">register_shape</code><span class="sig-paren">(</span><em>name</em>, <em>shape=None</em><span class="sig-paren">)</span></span></dt><dt id="turtle.addshape"><span class="yiyi-st" id="yiyi-741"> <code class="descclassname">turtle.</code><code class="descname">addshape</code><span class="sig-paren">(</span><em>name</em>, <em>shape=None</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-742">There are three different ways to call this function:</span></p><ol class="arabic"><li><p class="first"><span class="yiyi-st" id="yiyi-743"><em>name</em> is the name of a gif-file and <em>shape</em> is <code class="docutils literal"><span class="pre">None</span></code>: Install the corresponding image shape.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">register_shape</span><span class="p">(</span><span class="s2">"turtle.gif"</span><span class="p">)</span>
</code></pre><div class="admonition note"><p class="first admonition-title"><span class="yiyi-st" id="yiyi-744">Note</span></p><p class="last"><span class="yiyi-st" id="yiyi-745">图像形状<em>不会</em>在转动乌龟时旋转,因此它们不显示乌龟的标题!</span></p></div></li><li><p class="first"><span class="yiyi-st" id="yiyi-746"><em>name</em> is an arbitrary string and <em>shape</em> is a tuple of pairs of coordinates: Install the corresponding polygon shape.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">register_shape</span><span class="p">(</span><span class="s2">"triangle"</span><span class="p">,</span> <span class="p">((</span><span class="mi">5</span><span class="p">,</span><span class="o">-</span><span class="mi">3</span><span class="p">),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">5</span><span class="p">),</span> <span class="p">(</span><span class="o">-</span><span class="mi">5</span><span class="p">,</span><span class="o">-</span><span class="mi">3</span><span class="p">)))</span>
</code></pre></li><li><p class="first"><span class="yiyi-st" id="yiyi-747"><em>name</em> is an arbitrary string and shape is a (compound) <a class="reference internal" href="#turtle.Shape" title="turtle.Shape"><code class="xref py py-class docutils literal"><span class="pre">Shape</span></code></a> object: Install the corresponding compound shape.</span></p></li></ol><p><span class="yiyi-st" id="yiyi-748">Add a turtle shape to TurtleScreens shapelist. </span><span class="yiyi-st" id="yiyi-749">Only thusly registered shapes can be used by issuing the command <code class="docutils literal"><span class="pre">shape(shapename)</span></code>.</span></p></dd></dl><dl class="function"><dt id="turtle.turtles"><span class="yiyi-st" id="yiyi-750"> <code class="descclassname">turtle.</code><code class="descname">turtles</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-751">Return the list of turtles on the screen.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">for</span> <span class="n">turtle</span> <span class="ow">in</span> <span class="n">screen</span><span class="o">.</span><span class="n">turtles</span><span class="p">():</span>
<span class="gp">... </span> <span class="n">turtle</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"red"</span><span class="p">)</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.window_height"><span class="yiyi-st" id="yiyi-752"> <code class="descclassname">turtle.</code><code class="descname">window_height</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-753">Return the height of the turtle window.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">window_height</span><span class="p">()</span>
<span class="go">480</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.window_width"><span class="yiyi-st" id="yiyi-754"> <code class="descclassname">turtle.</code><code class="descname">window_width</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-755">Return the width of the turtle window.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">window_width</span><span class="p">()</span>
<span class="go">640</span>
</code></pre></dd></dl></div><div class="section" id="methods-specific-to-screen-not-inherited-from-turtlescreen"><h3><span class="yiyi-st" id="yiyi-756">24.1.4.6. </span><span class="yiyi-st" id="yiyi-757">Methods specific to Screen, not inherited from TurtleScreen</span></h3><dl class="function"><dt id="turtle.bye"><span class="yiyi-st" id="yiyi-758"> <code class="descclassname">turtle.</code><code class="descname">bye</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-759">Shut the turtlegraphics window.</span></p></dd></dl><dl class="function"><dt id="turtle.exitonclick"><span class="yiyi-st" id="yiyi-760"> <code class="descclassname">turtle.</code><code class="descname">exitonclick</code><span class="sig-paren">(</span><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-761">Bind bye() method to mouse clicks on the Screen.</span></p><p><span class="yiyi-st" id="yiyi-762">If the value “using_IDLE” in the configuration dictionary is <code class="docutils literal"><span class="pre">False</span></code> (default value), also enter mainloop. </span><span class="yiyi-st" id="yiyi-763">Remark: If IDLE with the <code class="docutils literal"><span class="pre">-n</span></code> switch (no subprocess) is used, this value should be set to <code class="docutils literal"><span class="pre">True</span></code> in <code class="file docutils literal"><span class="pre">turtle.cfg</span></code>. </span><span class="yiyi-st" id="yiyi-764">In this case IDLEs own mainloop is active also for the client script.</span></p></dd></dl><dl class="function"><dt id="turtle.setup"><span class="yiyi-st" id="yiyi-765"> <code class="descclassname">turtle.</code><code class="descname">setup</code><span class="sig-paren">(</span><em>width=_CFG["width"], height=_CFG["height"], startx=_CFG["leftright"], starty=_CFG["topbottom"]</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-766">Set the size and position of the main window. </span><span class="yiyi-st" id="yiyi-767">Default values of arguments are stored in the configuration dictionary and can be changed via a <code class="file docutils literal"><span class="pre">turtle.cfg</span></code> file.</span></p><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-768">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-769"><strong>width</strong> - 如果是整数大小以像素为单位如果是浮点数则为屏幕的一部分默认为屏幕的50</span></li><li><span class="yiyi-st" id="yiyi-770"><strong>height</strong> - 如果为整数高度以像素为单位如果为浮点数则为屏幕的一部分默认为屏幕的75</span></li><li><span class="yiyi-st" id="yiyi-771"><strong>startx</strong> - 如果为正从屏幕左边缘开始以像素为单位如果为负从右边缘如果为None则水平居中窗口</span></li><li><span class="yiyi-st" id="yiyi-772"><strong>starty</strong> - 如果为正从屏幕上边缘开始以像素为单位如果为负从下边缘如果为None则垂直居中窗口</span></li></ul></td></tr></tbody></table><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">setup</span> <span class="p">(</span><span class="n">width</span><span class="o">=</span><span class="mi">200</span><span class="p">,</span> <span class="n">height</span><span class="o">=</span><span class="mi">200</span><span class="p">,</span> <span class="n">startx</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">starty</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span> <span class="c1"># sets window to 200x200 pixels, in upper left of screen</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">setup</span><span class="p">(</span><span class="n">width</span><span class="o">=.</span><span class="mi">75</span><span class="p">,</span> <span class="n">height</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span> <span class="n">startx</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">starty</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span> <span class="c1"># sets window to 75% of screen by 50% of screen and centers</span>
</code></pre></dd></dl><dl class="function"><dt id="turtle.title"><span class="yiyi-st" id="yiyi-773"> <code class="descclassname">turtle.</code><code class="descname">title</code><span class="sig-paren">(</span><em>titlestring</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-774">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-775"><strong>titlestring</strong> a string that is shown in the titlebar of the turtle graphics window</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-776">Set title of turtle window to <em>titlestring</em>.</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">screen</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">"Welcome to the turtle zoo!"</span><span class="p">)</span>
</code></pre></dd></dl></div></div><div class="section" id="public-classes"><h2><span class="yiyi-st" id="yiyi-777">24.1.5. </span><span class="yiyi-st" id="yiyi-778">Public classes</span></h2><dl class="class"><dt id="turtle.RawTurtle"><span class="yiyi-st" id="yiyi-779"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">RawTurtle</code><span class="sig-paren">(</span><em>canvas</em><span class="sig-paren">)</span></span></dt><dt id="turtle.RawPen"><span class="yiyi-st" id="yiyi-780"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">RawPen</code><span class="sig-paren">(</span><em>canvas</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-781">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-782"><strong>canvas</strong> a <code class="xref py py-class docutils literal"><span class="pre">tkinter.Canvas</span></code>, a <a class="reference internal" href="#turtle.ScrolledCanvas" title="turtle.ScrolledCanvas"><code class="xref py py-class docutils literal"><span class="pre">ScrolledCanvas</span></code></a> or a <a class="reference internal" href="#turtle.TurtleScreen" title="turtle.TurtleScreen"><code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code></a></span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-783">Create a turtle. </span><span class="yiyi-st" id="yiyi-784">The turtle has all methods described above as “methods of Turtle/RawTurtle”.</span></p></dd></dl><dl class="class"><dt id="turtle.Turtle"><span class="yiyi-st" id="yiyi-785"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">Turtle</code></span></dt><dd><p><span class="yiyi-st" id="yiyi-786">Subclass of RawTurtle, has the same interface but draws on a default <a class="reference internal" href="#turtle.Screen" title="turtle.Screen"><code class="xref py py-class docutils literal"><span class="pre">Screen</span></code></a> object created automatically when needed for the first time.</span></p></dd></dl><dl class="class"><dt id="turtle.TurtleScreen"><span class="yiyi-st" id="yiyi-787"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">TurtleScreen</code><span class="sig-paren">(</span><em>cv</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-788">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-789"><strong>cv</strong> a <code class="xref py py-class docutils literal"><span class="pre">tkinter.Canvas</span></code></span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-790">Provides screen oriented methods like <code class="xref py py-func docutils literal"><span class="pre">setbg()</span></code> etc. </span><span class="yiyi-st" id="yiyi-791">that are described above.</span></p></dd></dl><dl class="class"><dt id="turtle.Screen"><span class="yiyi-st" id="yiyi-792"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">Screen</code></span></dt><dd><p><span class="yiyi-st" id="yiyi-793">Subclass of TurtleScreen, with <a class="reference internal" href="#screenspecific"><span>four methods added</span></a>.</span></p></dd></dl><dl class="class"><dt id="turtle.ScrolledCanvas"><span class="yiyi-st" id="yiyi-794"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">ScrolledCanvas</code><span class="sig-paren">(</span><em>master</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-795">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-796"><strong>master</strong> some Tkinter widget to contain the ScrolledCanvas, i.e. </span><span class="yiyi-st" id="yiyi-797">a Tkinter-canvas with scrollbars added</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-798">Used by class Screen, which thus automatically provides a ScrolledCanvas as playground for the turtles.</span></p></dd></dl><dl class="class"><dt id="turtle.Shape"><span class="yiyi-st" id="yiyi-799"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">Shape</code><span class="sig-paren">(</span><em>type_</em>, <em>data</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-800">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-801"><strong>type_</strong> one of the strings “polygon”, “image”, “compound”</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-802">Data structure modeling shapes. </span><span class="yiyi-st" id="yiyi-803">The pair <code class="docutils literal"><span class="pre">(type_,</span> <span class="pre">data)</span></code> must follow this specification:</span></p><table border="1" class="docutils"><thead valign="bottom"><tr class="row-odd"><th class="head"><span class="yiyi-st" id="yiyi-804"><em>type_</em></span></th><th class="head"><span class="yiyi-st" id="yiyi-805"><em>data</em></span></th></tr></thead><tbody valign="top"><tr class="row-even"><td><span class="yiyi-st" id="yiyi-806">“polygon”</span></td><td><span class="yiyi-st" id="yiyi-807">a polygon-tuple, i.e. </span><span class="yiyi-st" id="yiyi-808">a tuple of pairs of coordinates</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-809">“image”</span></td><td><span class="yiyi-st" id="yiyi-810">an image (in this form only used internally!)</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-811">“compound”</span></td><td><span class="yiyi-st" id="yiyi-812"><code class="docutils literal"><span class="pre">None</span></code> (a compound shape has to be constructed using the <a class="reference internal" href="#turtle.Shape.addcomponent" title="turtle.Shape.addcomponent"><code class="xref py py-meth docutils literal"><span class="pre">addcomponent()</span></code></a> method)</span></td></tr></tbody></table><dl class="method"><dt id="turtle.Shape.addcomponent"><span class="yiyi-st" id="yiyi-813"> <code class="descname">addcomponent</code><span class="sig-paren">(</span><em>poly</em>, <em>fill</em>, <em>outline=None</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-814">Parameters:</span></th><td class="field-body"><ul class="first last simple"><li><span class="yiyi-st" id="yiyi-815"><strong>poly</strong> a polygon, i.e. </span><span class="yiyi-st" id="yiyi-816">a tuple of pairs of numbers</span></li><li><span class="yiyi-st" id="yiyi-817"><strong>fill</strong> a color the <em>poly</em> will be filled with</span></li><li><span class="yiyi-st" id="yiyi-818"><strong>outline</strong> a color for the polys outline (if given)</span></li></ul></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-819">Example:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">poly</span> <span class="o">=</span> <span class="p">((</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">),(</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">),(</span><span class="mi">0</span><span class="p">,</span><span class="mi">10</span><span class="p">),(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span><span class="o">-</span><span class="mi">5</span><span class="p">))</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">s</span> <span class="o">=</span> <span class="n">Shape</span><span class="p">(</span><span class="s2">"compound"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">s</span><span class="o">.</span><span class="n">addcomponent</span><span class="p">(</span><span class="n">poly</span><span class="p">,</span> <span class="s2">"red"</span><span class="p">,</span> <span class="s2">"blue"</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># ... add more components and then use register_shape()</span>
</code></pre><p><span class="yiyi-st" id="yiyi-820">See <a class="reference internal" href="#compoundshapes"><span>Compound shapes</span></a>.</span></p></dd></dl></dd></dl><dl class="class"><dt id="turtle.Vec2D"><span class="yiyi-st" id="yiyi-821"> <em class="property">class </em><code class="descclassname">turtle.</code><code class="descname">Vec2D</code><span class="sig-paren">(</span><em>x</em>, <em>y</em><span class="sig-paren">)</span></span></dt><dd><p><span class="yiyi-st" id="yiyi-822">A two-dimensional vector class, used as a helper class for implementing turtle graphics. </span><span class="yiyi-st" id="yiyi-823">May be useful for turtle graphics programs too. </span><span class="yiyi-st" id="yiyi-824">Derived from tuple, so a vector is a tuple!</span></p><p><span class="yiyi-st" id="yiyi-825">Provides (for <em>a</em>, <em>b</em> vectors, <em>k</em> number):</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-826"><code class="docutils literal"><span class="pre">a</span> <span class="pre">+</span> <span class="pre">b</span></code> vector addition</span></li><li><span class="yiyi-st" id="yiyi-827"><code class="docutils literal"><span class="pre">a</span> <span class="pre">-</span> <span class="pre">b</span></code> vector subtraction</span></li><li><span class="yiyi-st" id="yiyi-828"><code class="docutils literal"><span class="pre">a</span> <span class="pre">*</span> <span class="pre">b</span></code> inner product</span></li><li><span class="yiyi-st" id="yiyi-829"><code class="docutils literal"><span class="pre">k</span> <span class="pre">*</span> <span class="pre">a</span></code> and <code class="docutils literal"><span class="pre">a</span> <span class="pre">*</span> <span class="pre">k</span></code> multiplication with scalar</span></li><li><span class="yiyi-st" id="yiyi-830"><code class="docutils literal"><span class="pre">abs(a)</span></code> absolute value of a</span></li><li><span class="yiyi-st" id="yiyi-831"><code class="docutils literal"><span class="pre">a.rotate(angle)</span></code> rotation</span></li></ul></dd></dl></div><div class="section" id="help-and-configuration"><h2><span class="yiyi-st" id="yiyi-832">24.1.6. </span><span class="yiyi-st" id="yiyi-833">Help and configuration</span></h2><div class="section" id="how-to-use-help"><h3><span class="yiyi-st" id="yiyi-834">24.1.6.1. </span><span class="yiyi-st" id="yiyi-835">How to use help</span></h3><p><span class="yiyi-st" id="yiyi-836">The public methods of the Screen and Turtle classes are documented extensively via docstrings. </span><span class="yiyi-st" id="yiyi-837">So these can be used as online-help via the Python help facilities:</span></p><ul><li><p class="first"><span class="yiyi-st" id="yiyi-838">When using IDLE, tooltips show the signatures and first lines of the docstrings of typed in function-/method calls.</span></p></li><li><p class="first"><span class="yiyi-st" id="yiyi-839">Calling <a class="reference internal" href="functions.html#help" title="help"><code class="xref py py-func docutils literal"><span class="pre">help()</span></code></a> on methods or functions displays the docstrings:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">help</span><span class="p">(</span><span class="n">Screen</span><span class="o">.</span><span class="n">bgcolor</span><span class="p">)</span>
<span class="go">Help on method bgcolor in module turtle:</span>
<span class="go">bgcolor(self, *args) unbound turtle.Screen method</span>
<span class="go"> Set or return backgroundcolor of the TurtleScreen.</span>
<span class="go"> Arguments (if given): a color string or three numbers</span>
<span class="go"> in the range 0..colormode or a 3-tuple of such numbers.</span>
<span class="go"> &gt;&gt;&gt; screen.bgcolor("orange")</span>
<span class="go"> &gt;&gt;&gt; screen.bgcolor()</span>
<span class="go"> "orange"</span>
<span class="go"> &gt;&gt;&gt; screen.bgcolor(0.5,0,0.5)</span>
<span class="go"> &gt;&gt;&gt; screen.bgcolor()</span>
<span class="go"> "#800080"</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">help</span><span class="p">(</span><span class="n">Turtle</span><span class="o">.</span><span class="n">penup</span><span class="p">)</span>
<span class="go">Help on method penup in module turtle:</span>
<span class="go">penup(self) unbound turtle.Turtle method</span>
<span class="go"> Pull the pen up -- no drawing when moving.</span>
<span class="go"> Aliases: penup | pu | up</span>
<span class="go"> No argument</span>
<span class="go"> &gt;&gt;&gt; turtle.penup()</span>
</code></pre></li><li><p class="first"><span class="yiyi-st" id="yiyi-840">The docstrings of the functions which are derived from methods have a modified form:</span></p><pre><code class="language-python"><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">help</span><span class="p">(</span><span class="n">bgcolor</span><span class="p">)</span>
<span class="go">Help on function bgcolor in module turtle:</span>
<span class="go">bgcolor(*args)</span>
<span class="go"> Set or return backgroundcolor of the TurtleScreen.</span>
<span class="go"> Arguments (if given): a color string or three numbers</span>
<span class="go"> in the range 0..colormode or a 3-tuple of such numbers.</span>
<span class="go"> Example::</span>
<span class="go"> &gt;&gt;&gt; bgcolor("orange")</span>
<span class="go"> &gt;&gt;&gt; bgcolor()</span>
<span class="go"> "orange"</span>
<span class="go"> &gt;&gt;&gt; bgcolor(0.5,0,0.5)</span>
<span class="go"> &gt;&gt;&gt; bgcolor()</span>
<span class="go"> "#800080"</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">help</span><span class="p">(</span><span class="n">penup</span><span class="p">)</span>
<span class="go">Help on function penup in module turtle:</span>
<span class="go">penup()</span>
<span class="go"> Pull the pen up -- no drawing when moving.</span>
<span class="go"> Aliases: penup | pu | up</span>
<span class="go"> No argument</span>
<span class="go"> Example:</span>
<span class="go"> &gt;&gt;&gt; penup()</span>
</code></pre></li></ul><p><span class="yiyi-st" id="yiyi-841">These modified docstrings are created automatically together with the function definitions that are derived from the methods at import time.</span></p></div><div class="section" id="translation-of-docstrings-into-different-languages"><h3><span class="yiyi-st" id="yiyi-842">24.1.6.2. </span><span class="yiyi-st" id="yiyi-843">Translation of docstrings into different languages</span></h3><p><span class="yiyi-st" id="yiyi-844">There is a utility to create a dictionary the keys of which are the method names and the values of which are the docstrings of the public methods of the classes Screen and Turtle.</span></p><dl class="function"><dt id="turtle.write_docstringdict"><span class="yiyi-st" id="yiyi-845"> <code class="descclassname">turtle.</code><code class="descname">write_docstringdict</code><span class="sig-paren">(</span><em>filename="turtle_docstringdict"</em><span class="sig-paren">)</span></span></dt><dd><table class="docutils field-list" frame="void" rules="none"><tbody valign="top"><tr class="field-odd field"><th class="field-name"><span class="yiyi-st" id="yiyi-846">Parameters:</span></th><td class="field-body"><span class="yiyi-st" id="yiyi-847"><strong>filename</strong> a string, used as filename</span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-848">Create and write docstring-dictionary to a Python script with the given filename. </span><span class="yiyi-st" id="yiyi-849">This function has to be called explicitly (it is not used by the turtle graphics classes). </span><span class="yiyi-st" id="yiyi-850">The docstring dictionary will be written to the Python script <code class="file docutils literal"><em><span class="pre">filename</span></em><span class="pre">.py</span></code>. </span><span class="yiyi-st" id="yiyi-851">It is intended to serve as a template for translation of the docstrings into different languages.</span></p></dd></dl><p><span class="yiyi-st" id="yiyi-852">If you (or your students) want to use <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a> with online help in your native language, you have to translate the docstrings and save the resulting file as e.g. </span><span class="yiyi-st" id="yiyi-853"><code class="file docutils literal"><span class="pre">turtle_docstringdict_german.py</span></code>.</span></p><p><span class="yiyi-st" id="yiyi-854">If you have an appropriate entry in your <code class="file docutils literal"><span class="pre">turtle.cfg</span></code> file this dictionary will be read in at import time and will replace the original English docstrings.</span></p><p><span class="yiyi-st" id="yiyi-855">At the time of this writing there are docstring dictionaries in German and in Italian. </span><span class="yiyi-st" id="yiyi-856">(Requests please to <a class="reference external" href="mailto:glingl%40aon.at">glingl<span>@</span>aon<span>.</span>at</a>.)</span></p></div><div class="section" id="how-to-configure-screen-and-turtles"><h3><span class="yiyi-st" id="yiyi-857">24.1.6.3. </span><span class="yiyi-st" id="yiyi-858">How to configure Screen and Turtles</span></h3><p><span class="yiyi-st" id="yiyi-859">The built-in default configuration mimics the appearance and behaviour of the old turtle module in order to retain best possible compatibility with it.</span></p><p><span class="yiyi-st" id="yiyi-860">If you want to use a different configuration which better reflects the features of this module or which better fits to your needs, e.g. </span><span class="yiyi-st" id="yiyi-861">for use in a classroom, you can prepare a configuration file <code class="docutils literal"><span class="pre">turtle.cfg</span></code> which will be read at import time and modify the configuration according to its settings.</span></p><p><span class="yiyi-st" id="yiyi-862">The built in configuration would correspond to the following turtle.cfg:</span></p><pre><code class="language-python"><span></span><span class="n">width</span> <span class="o">=</span> <span class="mf">0.5</span>
<span class="n">height</span> <span class="o">=</span> <span class="mf">0.75</span>
<span class="n">leftright</span> <span class="o">=</span> <span class="kc">None</span>
<span class="n">topbottom</span> <span class="o">=</span> <span class="kc">None</span>
<span class="n">canvwidth</span> <span class="o">=</span> <span class="mi">400</span>
<span class="n">canvheight</span> <span class="o">=</span> <span class="mi">300</span>
<span class="n">mode</span> <span class="o">=</span> <span class="n">standard</span>
<span class="n">colormode</span> <span class="o">=</span> <span class="mf">1.0</span>
<span class="n">delay</span> <span class="o">=</span> <span class="mi">10</span>
<span class="n">undobuffersize</span> <span class="o">=</span> <span class="mi">1000</span>
<span class="n">shape</span> <span class="o">=</span> <span class="n">classic</span>
<span class="n">pencolor</span> <span class="o">=</span> <span class="n">black</span>
<span class="n">fillcolor</span> <span class="o">=</span> <span class="n">black</span>
<span class="n">resizemode</span> <span class="o">=</span> <span class="n">noresize</span>
<span class="n">visible</span> <span class="o">=</span> <span class="kc">True</span>
<span class="n">language</span> <span class="o">=</span> <span class="n">english</span>
<span class="n">exampleturtle</span> <span class="o">=</span> <span class="n">turtle</span>
<span class="n">examplescreen</span> <span class="o">=</span> <span class="n">screen</span>
<span class="n">title</span> <span class="o">=</span> <span class="n">Python</span> <span class="n">Turtle</span> <span class="n">Graphics</span>
<span class="n">using_IDLE</span> <span class="o">=</span> <span class="kc">False</span>
</code></pre><p><span class="yiyi-st" id="yiyi-863">Short explanation of selected entries:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-864">The first four lines correspond to the arguments of the <code class="xref py py-meth docutils literal"><span class="pre">Screen.setup()</span></code> method.</span></li><li><span class="yiyi-st" id="yiyi-865">Line 5 and 6 correspond to the arguments of the method <code class="xref py py-meth docutils literal"><span class="pre">Screen.screensize()</span></code>.</span></li><li><span class="yiyi-st" id="yiyi-866"><em>shape</em> can be any of the built-in shapes, e.g: arrow, turtle, etc. </span><span class="yiyi-st" id="yiyi-867">For more info try <code class="docutils literal"><span class="pre">help(shape)</span></code>.</span></li><li><span class="yiyi-st" id="yiyi-868">If you want to use no fillcolor (i.e. </span><span class="yiyi-st" id="yiyi-869">make the turtle transparent), you have to write <code class="docutils literal"><span class="pre">fillcolor</span> <span class="pre">=</span> <span class="pre">""</span></code> (but all nonempty strings must not have quotes in the cfg-file).</span></li><li><span class="yiyi-st" id="yiyi-870">If you want to reflect the turtle its state, you have to use <code class="docutils literal"><span class="pre">resizemode</span> <span class="pre">=</span> <span class="pre">auto</span></code>.</span></li><li><span class="yiyi-st" id="yiyi-871">If you set e.g. </span><span class="yiyi-st" id="yiyi-872"><code class="docutils literal"><span class="pre">language</span> <span class="pre">=</span> <span class="pre">italian</span></code> the docstringdict <code class="file docutils literal"><span class="pre">turtle_docstringdict_italian.py</span></code> will be loaded at import time (if present on the import path, e.g. </span><span class="yiyi-st" id="yiyi-873">in the same directory as <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a>.</span></li><li><span class="yiyi-st" id="yiyi-874">The entries <em>exampleturtle</em> and <em>examplescreen</em> define the names of these objects as they occur in the docstrings. </span><span class="yiyi-st" id="yiyi-875">The transformation of method-docstrings to function-docstrings will delete these names from the docstrings.</span></li><li><span class="yiyi-st" id="yiyi-876"><em>using_IDLE</em>: Set this to <code class="docutils literal"><span class="pre">True</span></code> if you regularly work with IDLE and its -n switch (“no subprocess”). </span><span class="yiyi-st" id="yiyi-877">This will prevent <a class="reference internal" href="#turtle.exitonclick" title="turtle.exitonclick"><code class="xref py py-func docutils literal"><span class="pre">exitonclick()</span></code></a> to enter the mainloop.</span></li></ul><p><span class="yiyi-st" id="yiyi-878">There can be a <code class="file docutils literal"><span class="pre">turtle.cfg</span></code> file in the directory where <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a> is stored and an additional one in the current working directory. </span><span class="yiyi-st" id="yiyi-879">The latter will override the settings of the first one.</span></p><p><span class="yiyi-st" id="yiyi-880">The <code class="file docutils literal"><span class="pre">Lib/turtledemo</span></code> directory contains a <code class="file docutils literal"><span class="pre">turtle.cfg</span></code> file. </span><span class="yiyi-st" id="yiyi-881">You can study it as an example and see its effects when running the demos (preferably not from within the demo-viewer).</span></p></div></div><div class="section" id="module-turtledemo"><h2><span class="yiyi-st" id="yiyi-882">24.1.7. <a class="reference internal" href="#module-turtledemo" title="turtledemo: A viewer for example turtle scripts"><code class="xref py py-mod docutils literal"><span class="pre">turtledemo</span></code></a> — Demo scripts</span></h2><p><span class="yiyi-st" id="yiyi-883">The <a class="reference internal" href="#module-turtledemo" title="turtledemo: A viewer for example turtle scripts"><code class="xref py py-mod docutils literal"><span class="pre">turtledemo</span></code></a> package includes a set of demo scripts. </span><span class="yiyi-st" id="yiyi-884">These scripts can be run and viewed using the supplied demo viewer as follows:</span></p><pre><code class="language-python"><span></span><span class="n">python</span> <span class="o">-</span><span class="n">m</span> <span class="n">turtledemo</span>
</code></pre><p><span class="yiyi-st" id="yiyi-885">Alternatively, you can run the demo scripts individually. </span><span class="yiyi-st" id="yiyi-886">For example,</span></p><pre><code class="language-python"><span></span><span class="n">python</span> <span class="o">-</span><span class="n">m</span> <span class="n">turtledemo</span><span class="o">.</span><span class="n">bytedesign</span>
</code></pre><p><span class="yiyi-st" id="yiyi-887">The <a class="reference internal" href="#module-turtledemo" title="turtledemo: A viewer for example turtle scripts"><code class="xref py py-mod docutils literal"><span class="pre">turtledemo</span></code></a> package directory contains:</span></p><ul class="simple"><li><span class="yiyi-st" id="yiyi-888">A demo viewer <code class="file docutils literal"><span class="pre">__main__.py</span></code> which can be used to view the sourcecode of the scripts and run them at the same time.</span></li><li><span class="yiyi-st" id="yiyi-889">Multiple scripts demonstrating different features of the <a class="reference internal" href="#module-turtle" title="turtle: An educational framework for simple graphics applications"><code class="xref py py-mod docutils literal"><span class="pre">turtle</span></code></a> module. </span><span class="yiyi-st" id="yiyi-890">Examples can be accessed via the Examples menu. </span><span class="yiyi-st" id="yiyi-891">They can also be run standalone.</span></li><li><span class="yiyi-st" id="yiyi-892">A <code class="file docutils literal"><span class="pre">turtle.cfg</span></code> file which serves as an example of how to write and use such files.</span></li></ul><p><span class="yiyi-st" id="yiyi-893">The demo scripts are:</span></p><table border="1" class="docutils"><thead valign="bottom"><tr class="row-odd"><th class="head"><span class="yiyi-st" id="yiyi-894">Name</span></th><th class="head"><span class="yiyi-st" id="yiyi-895">Description</span></th><th class="head"><span class="yiyi-st" id="yiyi-896">Features</span></th></tr></thead><tbody valign="top"><tr class="row-even"><td><span class="yiyi-st" id="yiyi-897">bytedesign</span></td><td><span class="yiyi-st" id="yiyi-898">complex classical turtle graphics pattern</span></td><td><span class="yiyi-st" id="yiyi-899"><code class="xref py py-func docutils literal"><span class="pre">tracer()</span></code>, delay, <code class="xref py py-func docutils literal"><span class="pre">update()</span></code></span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-900">chaos</span></td><td><span class="yiyi-st" id="yiyi-901">graphs Verhulst dynamics, shows that computers computations can generate results sometimes against the common sense expectations</span></td><td><span class="yiyi-st" id="yiyi-902">world coordinates</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-903">时钟</span></td><td><span class="yiyi-st" id="yiyi-904">显示您计算机时间的模拟时钟</span></td><td><span class="yiyi-st" id="yiyi-905">turtles as clocks hands, ontimer</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-906">colormixer</span></td><td><span class="yiyi-st" id="yiyi-907">experiment with r, g, b</span></td><td><span class="yiyi-st" id="yiyi-908"><code class="xref py py-func docutils literal"><span class="pre">ondrag()</span></code></span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-909">forest</span></td><td><span class="yiyi-st" id="yiyi-910">3 breadth-first trees</span></td><td><span class="yiyi-st" id="yiyi-911">randomization</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-912">fractalcurves</span></td><td><span class="yiyi-st" id="yiyi-913">Hilbert &amp; Koch curves</span></td><td><span class="yiyi-st" id="yiyi-914">recursion</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-915">lindenmayer</span></td><td><span class="yiyi-st" id="yiyi-916">ethnomathematics (indian kolams)</span></td><td><span class="yiyi-st" id="yiyi-917">L-System</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-918">minimal_hanoi</span></td><td><span class="yiyi-st" id="yiyi-919">Towers of Hanoi</span></td><td><span class="yiyi-st" id="yiyi-920">Rectangular Turtles as Hanoi discs (shape, shapesize)</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-921">nim</span></td><td><span class="yiyi-st" id="yiyi-922">play the classical nim game with three heaps of sticks against the computer.</span></td><td><span class="yiyi-st" id="yiyi-923">turtles as nimsticks, event driven (mouse, keyboard)</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-924">paint</span></td><td><span class="yiyi-st" id="yiyi-925">super minimalistic drawing program</span></td><td><span class="yiyi-st" id="yiyi-926"><code class="xref py py-func docutils literal"><span class="pre">onclick()</span></code></span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-927">peace</span></td><td><span class="yiyi-st" id="yiyi-928">elementary</span></td><td><span class="yiyi-st" id="yiyi-929">turtle: appearance and animation</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-930">penrose</span></td><td><span class="yiyi-st" id="yiyi-931">aperiodic tiling with kites and darts</span></td><td><span class="yiyi-st" id="yiyi-932"><code class="xref py py-func docutils literal"><span class="pre">stamp()</span></code></span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-933">planet_and_moon</span></td><td><span class="yiyi-st" id="yiyi-934">simulation of gravitational system</span></td><td><span class="yiyi-st" id="yiyi-935">compound shapes, <code class="xref py py-class docutils literal"><span class="pre">Vec2D</span></code></span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-936">round_dance</span></td><td><span class="yiyi-st" id="yiyi-937">dancing turtles rotating pairwise in opposite direction</span></td><td><span class="yiyi-st" id="yiyi-938">compound shapes, clone shapesize, tilt, get_shapepoly, update</span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-939">排序动画</span></td><td><span class="yiyi-st" id="yiyi-940">不同排序方法的可视化演示</span></td><td><span class="yiyi-st" id="yiyi-941">simple alignment, randomization</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-942">画一棵树</span></td><td><span class="yiyi-st" id="yiyi-943">a (graphical) breadth first tree (using generators)</span></td><td><span class="yiyi-st" id="yiyi-944"><code class="xref py py-func docutils literal"><span class="pre">clone()</span></code></span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-945">two_canvases</span></td><td><span class="yiyi-st" id="yiyi-946">simple design</span></td><td><span class="yiyi-st" id="yiyi-947">turtles on two canvases</span></td></tr><tr class="row-odd"><td><span class="yiyi-st" id="yiyi-948">wikipedia</span></td><td><span class="yiyi-st" id="yiyi-949">a pattern from the wikipedia article on turtle graphics</span></td><td><span class="yiyi-st" id="yiyi-950"><code class="xref py py-func docutils literal"><span class="pre">clone()</span></code>, <code class="xref py py-func docutils literal"><span class="pre">undo()</span></code></span></td></tr><tr class="row-even"><td><span class="yiyi-st" id="yiyi-951">阴阳八卦鱼图</span></td><td><span class="yiyi-st" id="yiyi-952">一个副圆的基本示例</span></td><td><span class="yiyi-st" id="yiyi-953"><code class="xref py py-func docutils literal"><span class="pre">circle()</span></code></span></td></tr></tbody></table><p><span class="yiyi-st" id="yiyi-954">Have fun!</span></p></div><div class="section" id="changes-since-python-2-6"><h2><span class="yiyi-st" id="yiyi-955">24.1.8. </span><span class="yiyi-st" id="yiyi-956">Changes since Python 2.6</span></h2><ul class="simple"><li><span class="yiyi-st" id="yiyi-957">The methods <code class="xref py py-meth docutils literal"><span class="pre">Turtle.tracer()</span></code>, <code class="xref py py-meth docutils literal"><span class="pre">Turtle.window_width()</span></code> and <code class="xref py py-meth docutils literal"><span class="pre">Turtle.window_height()</span></code> have been eliminated. </span><span class="yiyi-st" id="yiyi-958">Methods with these names and functionality are now available only as methods of <code class="xref py py-class docutils literal"><span class="pre">Screen</span></code>. </span><span class="yiyi-st" id="yiyi-959">The functions derived from these remain available. </span><span class="yiyi-st" id="yiyi-960">(In fact already in Python 2.6 these methods were merely duplications of the corresponding <code class="xref py py-class docutils literal"><span class="pre">TurtleScreen</span></code>/<code class="xref py py-class docutils literal"><span class="pre">Screen</span></code>-methods.)</span></li><li><span class="yiyi-st" id="yiyi-961">The method <code class="xref py py-meth docutils literal"><span class="pre">Turtle.fill()</span></code> has been eliminated. </span><span class="yiyi-st" id="yiyi-962">The behaviour of <code class="xref py py-meth docutils literal"><span class="pre">begin_fill()</span></code> and <code class="xref py py-meth docutils literal"><span class="pre">end_fill()</span></code> have changed slightly: now every filling-process must be completed with an <code class="docutils literal"><span class="pre">end_fill()</span></code> call.</span></li><li><span class="yiyi-st" id="yiyi-963">A method <code class="xref py py-meth docutils literal"><span class="pre">Turtle.filling()</span></code> has been added. </span><span class="yiyi-st" id="yiyi-964">It returns a boolean value: <code class="docutils literal"><span class="pre">True</span></code> if a filling process is under way, <code class="docutils literal"><span class="pre">False</span></code> otherwise. </span><span class="yiyi-st" id="yiyi-965">This behaviour corresponds to a <code class="docutils literal"><span class="pre">fill()</span></code> call without arguments in Python 2.6.</span></li></ul></div><div class="section" id="changes-since-python-3-0"><h2><span class="yiyi-st" id="yiyi-966">24.1.9. </span><span class="yiyi-st" id="yiyi-967">Changes since Python 3.0</span></h2><ul class="simple"><li><span class="yiyi-st" id="yiyi-968">The methods <code class="xref py py-meth docutils literal"><span class="pre">Turtle.shearfactor()</span></code>, <code class="xref py py-meth docutils literal"><span class="pre">Turtle.shapetransform()</span></code> and <code class="xref py py-meth docutils literal"><span class="pre">Turtle.get_shapepoly()</span></code> have been added. </span><span class="yiyi-st" id="yiyi-969">Thus the full range of regular linear transforms is now available for transforming turtle shapes. </span><span class="yiyi-st" id="yiyi-970"><code class="xref py py-meth docutils literal"><span class="pre">Turtle.tiltangle()</span></code> has been enhanced in functionality: it now can be used to get or set the tiltangle. </span><span class="yiyi-st" id="yiyi-971"><code class="xref py py-meth docutils literal"><span class="pre">Turtle.settiltangle()</span></code> has been deprecated.</span></li><li><span class="yiyi-st" id="yiyi-972">The method <code class="xref py py-meth docutils literal"><span class="pre">Screen.onkeypress()</span></code> has been added as a complement to <code class="xref py py-meth docutils literal"><span class="pre">Screen.onkey()</span></code> which in fact binds actions to the keyrelease event. </span><span class="yiyi-st" id="yiyi-973">Accordingly the latter has got an alias: <code class="xref py py-meth docutils literal"><span class="pre">Screen.onkeyrelease()</span></code>.</span></li><li><span class="yiyi-st" id="yiyi-974">The method <code class="xref py py-meth docutils literal"><span class="pre">Screen.mainloop()</span></code> has been added. </span><span class="yiyi-st" id="yiyi-975">So when working only with Screen and Turtle objects one must not additionally import <code class="xref py py-func docutils literal"><span class="pre">mainloop()</span></code> anymore.</span></li><li><span class="yiyi-st" id="yiyi-976">Two input methods has been added <code class="xref py py-meth docutils literal"><span class="pre">Screen.textinput()</span></code> and <code class="xref py py-meth docutils literal"><span class="pre">Screen.numinput()</span></code>. </span><span class="yiyi-st" id="yiyi-977">These popup input dialogs and return strings and numbers respectively.</span></li><li><span class="yiyi-st" id="yiyi-978">Two example scripts <code class="file docutils literal"><span class="pre">tdemo_nim.py</span></code> and <code class="file docutils literal"><span class="pre">tdemo_round_dance.py</span></code> have been added to the <code class="file docutils literal"><span class="pre">Lib/turtledemo</span></code> directory.</span></li></ul></div></div></div>