zoukankan      html  css  js  c++  java
  • Python交互设计_乌龟模块

    要检查是否已经安装了乌龟模块,你要打开Python解释器来输入如下内容:

    >>> import turtle

    >>> bob = turtle.Turtle()

    运行上述例子的时候,应该能弹出一个小窗口,还有个小箭头(象征小乌龟)。

    建立一个叫做mypolygon.py的文件,在里面输入如下内容:

    import turtle
    bob = turtle.Turtle() print(bob)
    print(bob)
    turtle.mainloop()

    这个小乌龟模块提供了一个叫做Turtle的函数,这个函数会创建一个Turtle对象,我们把它赋值给bob这个变量。

    运行python mypolygon.py文件,就能打印出bob内容:

    <turtle.Turtle object at 0x10cc88a50>

    这就意味着bob已经指向了模块turtle中所定义的Turtle类的一个对象。

    mainloop这个函数是告诉窗口等用户来做些事情,当然本次尝试的情况下,只会在窗口上显示小箭头,关闭窗口即可。

    一旦你创建了一个Trutle,你就可以调用一些方法让他在窗口中移动。方法跟函数有点相似, 但语法的使用稍微不太一样。比如你可以让小乌龟往前走: bob.fd(100)

    fd这个方法,是turtle类这个叫做bob的对象所包含的。调用这个方法就像是做出一个请求一样:你再让bob向前移动。fd这个方法的参数是像素数距离,所以实际的大小依赖于你显示器的情况了。

    Turtle对象中还有一些其他方法,比如bk是后退,lt是左转,rt是右转。lt和rt用偏转角度做参数。

    另外,每个Turtle都相当于带着笔,可以落下或者抬起;如果笔落下了,Turtle移动的时候就会留下轨迹了。抬笔落笔的方法缩写分别是pu和pd。

    画一个直角,就需要下面这些fd参数:

    dianzedeMacBook-Pro:python dianze$ cat mypolygon.py 

    #!/bin/python

    import turtle

    bob = turtle.Turtle()

    print(bob)  

    bob.fd(100)

    bob.lt(90)

    bob.fd(100)

    turtle.mainloop()

    运行这个程序,你就能看到bob先向东再往北,后面就留下了两根互相垂直的线段了:

    画一个四边形,就需要增加一些bob参数:

    $ cat mypolygon.py 

    #!/bin/python

    import turtle

    bob = turtle.Turtle()

    print(bob) 

    bob.fd(100)     #向前移动100像素

    bob.lt(90)       #左转90°

    bob.fd(100)     #向前移动100像素

    bob.lt(90)        #左转90°

    bob.fd(100)     #向前移动100像素

    bob.lt(90)        #左转90°

    bob.fd(100)     #向前移动100像素 

    turtle.mainloop()

     

    如果使用for循环:

    #!/bin/python

    import turtle

    bob = turtle.Turtle()

    print(bob) 

     for i in range(4):

       bob.fd(100)       #必须缩进4位

       bob.lt(90)         #必须缩进4位

    turtle.mainloop()

    结束。

  • 相关阅读:
    thinkpa R61i安装XP SATA的解决方法
    成都港宏4S店买的日产,送的无牌DVD 和可视倒车品牌是路特仕 80007
    设计模式之:解剖观察者模式
    java使用siger 获取服务器硬件信息(CPU 内存 网络 io等)
    lephone 壁纸(裸婚时代 童佳倩姚笛壁纸)
    C# 让程序自动以管理员身份运行
    项目管理的5大过程组、9大知识域、44个管理流程的映射关系
    Spring Security 中如何让用户名不存在的错误显示出来(用户名不存在显示Bad credentials)
    eclipse老是报ThreadPoolExecutor$Worker.run()
    Unison文件夹同步工具
  • 原文地址:https://www.cnblogs.com/liusingbon/p/13060093.html
Copyright © 2011-2022 走看看