精华内容
下载资源
问答
  • python之turtle库学习

    千次阅读 多人点赞 2019-06-24 11:55:49
    一。方法 ...turtle.forward(25) 2.backward() | bk() | back():向后移动指定的距离。参数:一个数字(integer or float))。 turtle.backward(30) 3..right() | rt():以角度单位向右转动。...

    一。方法

    1.forward() | fd():向前移动指定的距离。参数:一个数字(integer or float))

    turtle.forward(25)

    2.backward() | bk() | back():向后移动指定的距离。参数:一个数字(integer or float))。

    turtle.backward(30)

    3..right() | rt():以角度单位向右转动。参数:一个数字(integer or float))。单位默认为度数,可以通过degrees()和radians()进行设置。

    turtle.right(45)

    4.left() | lt():以角度单位向左转动。参数:一个数字(integer or float))。单位默认为度数,可以通过degrees()和radians()进行设置。

    turtle.left(45)  

    5.goto() | steps() | setposition():移动到绝对位置,如果笔落下,画线,不改变方向。参数:x-一个数字或一对数字。y-一个数字或None。

    turtle.setpos(60,30) #60.00,30.00)

    6.setx():设置第一个坐标的值即X方向。参数:一个数字(integer or float))。

    turtle.setx(10) #(10.00,0.00)

    7.sety():设置第二个坐标的值即Y方向。参数:一个数字(integer or float))。

    turtle.sety(10) #(0.00,10.00)

    8.setheading() | seth(): 北方向将方向设置为to_angle.就是东西南。具体如下:

    标准模式:0 - 东  90 - 北 180 - 西 270 - 南  标志模式 0- 北   90- 东    180- 南    270 - 西

    turtle.setheading(90)

    9.home() : 移动到原点 - 坐标(0,0):并将其标题设置为其起始方向(取决于模式)

    turtle.home() # (0.00,0.00)

    10.circle():绘制一个给定半径的圆。参数:radius-一个数字(半径,如果值为正则逆时针,负数为顺时针),extent-一个数字()steps- 执行的步数

    turtle.circle(120,180,5)

    11.dot() :用颜色画出一个直径大小的圆点。参数:size-一个大于1的整数,可None。默认用的是pensize+4和2*pensize的最大值,color-颜色值

    turtle.dot(20, "blue")

    12.stamp():将当前位置上的形状复制到画布上返回stamp_id.可以调用,可以删除。

    turtle.stamp()

    13.clearstamp():删除stamp()返回来的值。参数:stampid。

    14.clearstamps():删除全部stamp()的值。参数:stampid。

    15.undo():撤销最后的动作。

    16.speed():将速度设置为0..10范围内整数。如果没有参数,则返回当前速度。如果大于10或者小于0.5,则速度设置为0 。

    • “最快”:0 :直接成图,没有动画效果
    • “快”:10:大概一秒
    • “正常”:6:
    • “慢”:3
    • “最慢”:1
    •  
    • 17:position() | pos(): 返回当前的位置。

      17:position() | pos(): 返回当前的位置。

       

      turtle.pos()
      # (0.00,0.00)
      18.towards(): 返回当前位置同指定位置之间的角度。参数:x-一个数字或一对数字或一个实例的向量,y-如果x是数字,则为数字,否则为None。

      turtle.goto(10,10)
      tw = turtle.towards(0,0)
      print(tw)
      # 225
      19.xcor():返回x坐标。

           ycor():返回y坐标。

      20.heading(): 返回当前的方向值。

      21.distance():返回x,y两个点的直线距离

      22.degrees():设置一整圈的度数。默认是360度。

      23.radians():将角度测量单位设置为弧度。相当于 degrees(2*math.pi)

      24.pendown() | pd() | down():放下笔,移动的时候绘图。

      25.penup() | pu() | up():将提起笔,移动时无图。

      26.pensize():设置线条的粗细。参数:width-一个正数

      27.pen():使用键值对设置笔的属性:

       

      “shown”: True/False
      “pendown”: True/False
      “pencolor”: 颜色字符串或者颜色值
      “fillcolor”: 颜色字符串或者颜色值
      “pensize”: 正数
      “speed”: 速度范围为0..10的数字
      “resizemode”: “auto” or “user” or “noresize”
      “stretchfactor”: (positive number, positive number)
      “outline”: 正数
      “tilt”: 正数
       

      28.isdown():如果笔停止返回True,反之False

      29.pencolor():设置笔的颜色。

      30.fillcolor():笔的填充色。

      31.color():同时设置pencolor和fillcolor

      32.filling():返回fillstate状态,如果填充则返回True,反之False。

      33.begin_fill():在绘制要填充的形状前调用。当然在调用完还需要end_fill()。

      34.reset():重置,将屏幕中的图纸删除,重新居中并将所有变量设置为默认值。

      35.clear():删除图纸。对属性不做操作。

      36.write():写文本。参数:arg-要写入的对象。move-是否移动。align-对齐方式:left,right,center。font-字体。fontname,fontsize,fonttype。

      37.hideturtle() | ht() :删隐藏乌龟的形状,在做复杂绘图的时候隐藏的时候有利于提高绘图速度。

      38.showturtle() | st():显示乌龟的形状。

      39.isvisible():乌龟是否可见。如果可见返回True,反之则False。

      40.shape():设置乌龟的图形形状,取值:“arrow”, “turtle”, “circle”, “square”, “triangle”, “classic”

       

      41.isvisible():乌龟是否可见。如果可见返回True,反之则False。

      42.resizemode():参数:rmode取值:"auto","user","noresize".

      43.shapesize() | turtlesize() : 返回笔的属性。

      44.shearfactor(): 设置或者返回但钱的剪切因子。

      45.tilt():旋转由turtle shape角度从当前的倾斜角度。

      46.settiltangle():无论当前的倾斜角度如何,旋转乌龟指向 angle 指定的方向。参数:angle -数字。已弃用

      47.tiltangle():设置或者返回当前的倾斜角度。参数:angle - 数字

      48.shapetransform():设置或返回乌龟的形状的当前转换矩阵。

      49.get_shapepoly():返回当前形状的坐标。

      50.onclick():鼠标点击事件。参数:fun-一个带有两个参数的函数,这些参数将与画布上单击点的坐标一个调用。num-鼠标按钮的数量,默认为1(左键)。add- True的时候将添加新的绑定。否则替换以前的绑定。

      51.onrelease():鼠标释放事件。参数同点击事件。

      52.ondrag():鼠标移动事件。参数同点击事件。

      53.begin_poly(): 开始记录多边形的顶点。

      54.end_poly():停止记录多边形的顶点。

      55.get_poly():返回最后记录的多边形。

      56.clone():创建并返回具有相同位置等等属性的乌龟克隆。

      57.getturtle() | getpen() :获取trutle对象本身。

      58.getscreen():返回正在绘制的对象。

      59.setundobuffer(): 设置或禁用中断器。参数: size-整数。如果大小是None,则禁用缓冲区。

      60.undobufferentries():返回undobuffer中的条目数。

      61.bgcolor():设置或者返回当前的TurtleScreen的背景颜色。

      62.bgpic():设置背景图片。参数: picname-文件名。

      62.delay(): 设置或返回以毫秒为单位的绘制延迟,延迟越大,绘图越慢。

      63.ontimer():定时器。

      64.mainloop() | done() :开始循环 。

      65.textinput() | numinput():弹出一个输入字符串和数字的窗口。

      66.mode(): 三种方式:“standard”, “logo” or “world”

    二。

    实例:

    1、太阳花

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    # coding=utf-8

    import turtle

    import time

      

    # 同时设置pencolor=color1, fillcolor=color2

    turtle.color("red""yellow")

      

    turtle.begin_fill()

    for in range(50):

    turtle.forward(200)

    turtle.left(170)

    turtle.end_fill()

      

    turtle.mainloop()

      

    2、五角星

     

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    # coding=utf-8

    import turtle

    import time

      

    turtle.pensize(5)

    turtle.pencolor("yellow")

    turtle.fillcolor("red")

      

    turtle.begin_fill()

    for in range(5):

      turtle.forward(200)

      turtle.right(144)

    turtle.end_fill()

    time.sleep(2)

      

    turtle.penup()

    turtle.goto(-150,-120)

    turtle.color("violet")

    turtle.write("Done", font=('Arial'40'normal'))

      

    turtle.mainloop()

     

      

    3、时钟程序

    3、时钟程序

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    60

    61

    62

    63

    64

    65

    66

    67

    68

    69

    70

    71

    72

    73

    74

    75

    76

    77

    78

    79

    80

    81

    82

    83

    84

    85

    86

    87

    88

    89

    90

    91

    92

    93

    94

    95

    96

    97

    98

    99

    100

    101

    102

    103

    104

    105

    106

    107

    108

    109

    110

    111

    112

    113

    114

    115

    116

    117

    118

    119

    120

    121

    122

    123

    # coding=utf-8

      

    import turtle

    from datetime import *

      

    # 抬起画笔,向前运动一段距离放下

    def Skip(step):

        turtle.penup()

        turtle.forward(step)

        turtle.pendown()

      

    def mkHand(name, length):

        # 注册Turtle形状,建立表针Turtle

        turtle.reset()

        Skip(-length * 0.1)

        # 开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点。

        turtle.begin_poly()

        turtle.forward(length * 1.1)

        # 停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连。

        turtle.end_poly()

        # 返回最后记录的多边形。

        handForm = turtle.get_poly()

        turtle.register_shape(name, handForm)

      

    def Init():

        global secHand, minHand, hurHand, printer

        # 重置Turtle指向北

        turtle.mode("logo")

        # 建立三个表针Turtle并初始化

        mkHand("secHand"135)

        mkHand("minHand"125)

        mkHand("hurHand"90)

        secHand = turtle.Turtle()

        secHand.shape("secHand")

        minHand = turtle.Turtle()

        minHand.shape("minHand")

        hurHand = turtle.Turtle()

        hurHand.shape("hurHand")

        

        for hand in secHand, minHand, hurHand:

            hand.shapesize(113)

            hand.speed(0)

        

        # 建立输出文字Turtle

        printer = turtle.Turtle()

        # 隐藏画笔的turtle形状

        printer.hideturtle()

        printer.penup()

         

    def SetupClock(radius):

        # 建立表的外框

        turtle.reset()

        turtle.pensize(7)

        for in range(60):

            Skip(radius)

            if % 5 == 0:

                turtle.forward(20)

                Skip(-radius - 20)

                

                Skip(radius + 20)

                if == 0:

                    turtle.write(int(12), align="center", font=("Courier"14"bold"))

                elif == 30:

                    Skip(25)

                    turtle.write(int(i/5), align="center", font=("Courier"14"bold"))

                    Skip(-25)

                elif (i == 25 or == 35):

                    Skip(20)

                    turtle.write(int(i/5), align="center", font=("Courier"14"bold"))

                    Skip(-20)

                else:

                    turtle.write(int(i/5), align="center", font=("Courier"14"bold"))

                Skip(-radius - 20)

            else:

                turtle.dot(5)

                Skip(-radius)

            turtle.right(6)

             

    def Week(t):  

        week = ["星期一""星期二""星期三",

                "星期四""星期五""星期六""星期日"]

        return week[t.weekday()]

      

    def Date(t):

        = t.year

        = t.month

        = t.day

        return "%s %d%d" % (y, m, d)

      

    def Tick():

        # 绘制表针的动态显示

        = datetime.today()

        second = t.second + t.microsecond * 0.000001

        minute = t.minute + second / 60.0

        hour = t.hour + minute / 60.0

        secHand.setheading(6 * second)

        minHand.setheading(6 * minute)

        hurHand.setheading(30 * hour)

         

        turtle.tracer(False)

        printer.forward(65)

        printer.write(Week(t), align="center",

                      font=("Courier"14"bold"))

        printer.back(130)

        printer.write(Date(t), align="center",

                      font=("Courier"14"bold"))

        printer.home()

        turtle.tracer(True)

      

        # 100ms后继续调用tick

        turtle.ontimer(Tick, 100)

      

    def main():

        # 打开/关闭龟动画,并为更新图纸设置延迟。

        turtle.tracer(False)

        Init()

        SetupClock(160)

        turtle.tracer(True)

        Tick()

        turtle.mainloop()

      

    if __name__ == "__main__":

        main()

      

     

     

     

     

     

     

    展开全文
  • 用Python turtle库 绘制皮卡丘

    万次阅读 多人点赞 2019-05-31 19:18:55
    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形...

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
    turtle基础知识参考:
    https://gitchat.blog.csdn.net/article/details/90696190
    https://blog.csdn.net/zhouheng2018/article/details/79809374#3-turtle空间坐标体系
    奉上我的效果图
    在这里插入图片描述
    不得不说确实有不便之处,例如画不规则图案要经常试坐标,找距离,角度,耗费了很长时间,不过几何图形就方便很多了,下面上代码

    #!/usr/bin/env python 
    # -*- coding:utf-8 -*-
    from turtle import *
    '''
    绘制皮卡丘头部
    '''
    def face(x,y):
        """画脸"""
        begin_fill()
        penup()
        # 将海龟移动到指定的坐标
        goto(x, y)
        pendown()
        # 设置海龟的方向
        setheading(40)
    
        circle(-150, 69)
        fillcolor("#FBD624")
        # 将海龟移动到指定的坐标
        
        penup()
        goto(53.14, 113.29)
        pendown()
        
        setheading(300)
        circle(-150, 30)
        setheading(295)
        circle(-140, 20)
        print(position())
        forward(5)
        setheading(260)
        circle(-80, 70)
        print(position())
        penup()
        goto(-74.43,-79.09)
        pendown()
    
    
        penup()
        # 将海龟移动到指定的坐标
        goto(-144,103)
        pendown()
        setheading(242)
        circle(110, 35)
        right(10)
        forward(10)
        setheading(250)
        circle(80, 115)
        print(position())
    
        penup()
        goto(-74.43,-79.09)
        pendown()
        setheading(10)
        penup()
        goto(-144, 103)
    
        pendown()
        penup()
        goto(x, y)
        pendown()
    
    
        end_fill()
    
        # 下巴
        penup()
        goto(-50, -82.09)
        pendown()
        pencolor("#DDA120")
        fillcolor("#DDA120")
        begin_fill()
        setheading(-12)
        circle(120, 25)
        setheading(-145)
        forward(30)
        setheading(180)
        circle(-20, 20)
        setheading(143)
        forward(30)
        end_fill()
        # penup()
        # # 将海龟移动到指定的坐标
        # goto(0, 0)
        # pendown()
    
    def eye():
        """画眼睛"""
        # 左眼
        color("black","black")
        penup()
        goto(-110, 27)
        pendown()
        begin_fill()
        setheading(0)
        circle(24)
        end_fill()
        # 左眼仁
        color("white", "white")
        penup()
        goto(-105, 51)
        pendown()
        begin_fill()
        setheading(0)
        circle(10)
        end_fill()
        # 右眼
        color("black", "black")
        penup()
        goto(25, 40)
        pendown()
        begin_fill()
        setheading(0)
        circle(24)
        end_fill()
        # 右眼仁
        color("white", "white")
        penup()
        goto(17, 62)
        pendown()
        begin_fill()
        setheading(0)
        circle(10)
        end_fill()
    def cheek():
        """画脸颊"""
        # 右边
        color("#9E4406", "#FE2C21")
        penup()
        goto(-130, -50)
        pendown()
        begin_fill()
        setheading(0)
        circle(27)
        end_fill()
    
        # 左边
        color("#9E4406", "#FE2C21")
        penup()
        goto(53, -20)
        pendown()
        begin_fill()
        setheading(0)
        circle(27)
        end_fill()
    
    
    def nose():
        """画鼻子"""
        color("black", "black")
        penup()
        goto(-40, 38)
        pendown()
        begin_fill()
        circle(7,steps = 3)
        end_fill()
    def mouth():
        """画嘴"""
        color("black", "#F35590")
        # 嘴唇
        penup()
        goto(-10, 22)
        pendown()
        begin_fill()
        setheading(260)
        forward(60)
        circle(-11, 150)
        forward(55)
        print(position())
        penup()
        goto(-38.46, 21.97)
        pendown()
        end_fill()
    
        # 舌头
        color("#6A070D", "#6A070D")
        begin_fill()
        penup()
        goto(-10.00, 22.00)
        pendown()
        penup()
        goto(-14.29, -1.7)
        pendown()
        penup()
        goto(-52, -5)
        pendown()
        penup()
        goto(-60.40, 12.74)
        pendown()
        penup()
        goto(-38.46, 21.97)
        pendown()
        penup()
        goto(-10.00, 22.00)
        pendown()
    
        end_fill()
    
        color("black","#FFD624")
    
        penup()
        goto(-78, 15)
        pendown()
        begin_fill()
        setheading(-25)
        for i in range(2):
            setheading(-25)
            circle(35, 70)
    
        end_fill()
        color("#AB1945", "#AB1945")
        penup()
        goto(-52, -5)
        pendown()
        begin_fill()
        setheading(40)
        circle(-33, 70)
        goto(-16,-1.7)
        penup()
        goto(-18,-17)
        pendown()
        setheading(155)
        circle(25, 70)
        end_fill()
    
    
    def ear():
        """画耳朵"""
        # 左耳
        color("black","#FFD624")
        penup()
        goto(-145, 93)
        pendown()
        begin_fill()
        setheading(165)
        circle(-248,50)
        right(120)
        circle(-248,50)
        end_fill()
        color("black", "black")
        penup()
        goto(-240, 143)
        pendown()
        begin_fill()
        setheading(107)
        circle(-170, 25)
        left(80)
        circle(229, 15)
        left(120)
        circle(300, 15)
        end_fill()
    
        # 右耳
        color("black", "#FFD624")
        penup()
        goto(30, 136)
        pendown()
        begin_fill()
        setheading(64)
        circle(-248, 50)
    
        right(120)
        circle(-248, 50)
        end_fill()
        color("black", "black")
        penup()
        goto(160, 200)
        pendown()
        begin_fill()
        setheading(52)
        circle(170, 25)
        left(116)
        circle(229, 15)
        left(71)
        circle(-300, 15)
        end_fill()
        def setting():
        """设置参数"""
        pensize(2)
        # 隐藏海龟
        hideturtle()
        speed(10)
    def main():
        """主函数"""
        setting()
        face(-132,115)
        eye()
        cheek()
        nose()
        mouth()
        ear()
        done()
    
    if __name__ == '__main__':
        main()
    
    展开全文
  • Created on Nov 18, 2017 @author: QiZhao ''' import turtle # 设置初始位置 turtle.penup() turtle.left(90) turtle.fd(200) turtle.pendown() turtle.right(90) # 花蕊 turtle.fillcolor(red) turtle.begin_f
  • 绘图之前先要安装turtle模块 python 2: pip install turtle python 3: pip3 install turtle 1.小猪佩奇: #!/usr/bin/env python2 # coding=utf-8 import turtle as t t.pensize(4) t.hideturtle() t.colormode...

    绘图之前先要安装turtle模块
    python 2:

    pip install turtle
    

    python 3:

    pip3 install turtle
    

    1.小猪佩奇:
    在这里插入图片描述

    import turtle as t
    t.pensize(4)
    t.hideturtle()
    t.colormode(255)
    t.color((255, 155, 192), "pink")
    t.setup(840, 500)
    t.speed(20)
    # 鼻子
    t.pu()
    t.goto(-100, 100)
    t.pd()
    t.seth(-30)
    t.begin_fill()
    a = 0.4
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            a = a + 0.08
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a = a - 0.08
            t.lt(3)
            t.fd(a)
    t.end_fill()
    t.pu()
    t.seth(90)
    t.fd(25)
    t.seth(0)
    t.fd(10)
    t.pd()
    t.pencolor(255, 155, 192)
    t.seth(10)
    t.begin_fill()
    t.circle(5)
    t.color(160, 82, 45)
    t.end_fill()
    t.pu()
    t.seth(0)
    t.fd(20)
    t.pd()
    t.pencolor(255, 155, 192)
    t.seth(10)
    t.begin_fill()
    t.circle(5)
    t.color(160, 82, 45)
    t.end_fill()
    # 头
    t.color((255, 155, 192), "pink")
    t.pu()
    t.seth(90)
    t.fd(41)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.begin_fill()
    t.seth(180)
    t.circle(300, -30)
    t.circle(100, -60)
    t.circle(80, -100)
    t.circle(150, -20)
    t.circle(60, -95)
    t.seth(161)
    t.circle(-300, 15)
    t.pu()
    t.goto(-100, 100)
    t.pd()
    t.seth(-30)
    a = 0.4
    for i in range(60):
        if 0 <= i < 30 or 60 <= i < 90:
            a = a + 0.08
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a = a - 0.08
            t.lt(3)
            t.fd(a)
    t.end_fill()
    # 耳朵
    t.color((255, 155, 192), "pink")
    t.pu()
    t.seth(90)
    t.fd(-7)
    t.seth(0)
    t.fd(70)
    t.pd()
    t.begin_fill()
    t.seth(100)
    t.circle(-50, 50)
    t.circle(-10, 120)
    t.circle(-50, 54)
    t.end_fill()
    t.pu()
    t.seth(90)
    t.fd(-12)
    t.seth(0)
    t.fd(30)
    t.pd()
    t.begin_fill()
    t.seth(100)
    t.circle(-50, 50)
    t.circle(-10, 120)
    t.circle(-50, 56)
    t.end_fill()
    # 眼睛
    t.color((255, 155, 192), "white")
    t.pu()
    t.seth(90)
    t.fd(-20)
    t.seth(0)
    t.fd(-95)
    t.pd()
    t.begin_fill()
    t.circle(15)
    t.end_fill()
    t.color("black")
    t.pu()
    t.seth(90)
    t.fd(12)
    t.seth(0)
    t.fd(-3)
    t.pd()
    t.begin_fill()
    t.circle(3)
    t.end_fill()
    t.color((255, 155, 192), "white")
    t.pu()
    t.seth(90)
    t.fd(-25)
    t.seth(0)
    t.fd(40)
    t.pd()
    t.begin_fill()
    t.circle(15)
    t.end_fill()
    t.color("black")
    t.pu()
    t.seth(90)
    t.fd(12)
    t.seth(0)
    t.fd(-3)
    t.pd()
    t.begin_fill()
    t.circle(3)
    t.end_fill()
    # 腮
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(-95)
    t.seth(0)
    t.fd(65)
    t.pd()
    t.begin_fill()
    t.circle(30)
    t.end_fill()
    # 嘴
    t.color(239, 69, 19)
    t.pu()
    t.seth(90)
    t.fd(15)
    t.seth(0)
    t.fd(-100)
    t.pd()
    t.seth(-80)
    t.circle(30, 40)
    t.circle(40, 80)
    # 身体
    t.color("red", (255, 99, 71))
    t.pu()
    t.seth(90)
    t.fd(-20)
    t.seth(0)
    t.fd(-78)
    t.pd()
    t.begin_fill()
    t.seth(-130)
    t.circle(100, 10)
    t.circle(300, 30)
    t.seth(0)
    t.fd(230)
    t.seth(90)
    t.circle(300, 30)
    t.circle(100, 3)
    t.color((255, 155, 192), (255, 100, 100))
    t.seth(-135)
    t.circle(-80, 63)
    t.circle(-150, 24)
    t.end_fill()
    # 手
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(-40)
    t.seth(0)
    t.fd(-27)
    t.pd()
    t.seth(-160)
    t.circle(300, 15)
    t.pu()
    t.seth(90)
    t.fd(15)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.seth(-10)
    t.circle(-20, 90)
    t.pu()
    t.seth(90)
    t.fd(30)
    t.seth(0)
    t.fd(237)
    t.pd()
    t.seth(-20)
    t.circle(-300, 15)
    t.pu()
    t.seth(90)
    t.fd(20)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.seth(-170)
    t.circle(20, 90)
    # 脚
    t.pensize(10)
    t.color((240, 128, 128))
    t.pu()
    t.seth(90)
    t.fd(-75)
    t.seth(0)
    t.fd(-180)
    t.pd()
    t.seth(-90)
    t.fd(40)
    t.seth(-180)
    t.color("black")
    t.pensize(15)
    t.fd(20)
    t.pensize(10)
    t.color((240, 128, 128))
    t.pu()
    t.seth(90)
    t.fd(40)
    t.seth(0)
    t.fd(90)
    t.pd()
    t.seth(-90)
    t.fd(40)
    t.seth(-180)
    t.color("black")
    t.pensize(15)
    t.fd(20)
    # 尾巴
    t.pensize(4)
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(70)
    t.seth(0)
    t.fd(95)
    t.pd()
    t.seth(0)
    t.circle(70, 20)
    t.circle(10, 330)
    t.circle(70, 30)
    t.exitonclick()
    

    2.叮当猫

    import turtle as t
    # t.speed(5)
    t.pensize(8)
    t.hideturtle()
    t.screensize(500, 500, bg='white')
    # 猫脸
    t.fillcolor('#00A1E8')
    t.begin_fill()
    t.circle(120)
    t.end_fill()
    t.pensize(3)
    t.fillcolor('white')
    t.begin_fill()
    t.circle(100)
    t.end_fill()
    t.pu()
    t.home()
    t.goto(0, 134)
    t.pd()
    t.pensize(4)
    t.fillcolor("#EA0014")
    t.begin_fill()
    t.circle(18)
    t.end_fill()
    t.pu()
    t.goto(7, 155)
    t.pensize(2)
    t.color('white', 'white')
    t.pd()
    t.begin_fill()
    t.circle(4)
    t.end_fill()
    t.pu()
    t.goto(-30, 160)
    t.pensize(4)
    t.pd()
    t.color('black', 'white')
    t.begin_fill()
    a = 0.4
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            a = a + 0.08
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a = a - 0.08
            t.lt(3)
            t.fd(a)
    t.end_fill()
    t.pu()
    t.goto(30, 160)
    t.pensize(4)
    t.pd()
    t.color('black', 'white')
    t.begin_fill()
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            a = a + 0.08
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a = a - 0.08
            t.lt(3)
            t.fd(a)
    t.end_fill()
    t.pu()
    t.goto(-38, 190)
    t.pensize(8)
    t.pd()
    t.right(-30)
    t.forward(15)
    t.right(70)
    t.forward(15)
    t.pu()
    t.goto(15, 185)
    t.pensize(4)
    t.pd()
    t.color('black', 'black')
    t.begin_fill()
    t.circle(13)
    t.end_fill()
    t.pu()
    t.goto(13, 190)
    t.pensize(2)
    t.pd()
    t.color('white', 'white')
    t.begin_fill()
    t.circle(5)
    t.end_fill()
    t.pu()
    t.home()
    t.goto(0, 134)
    t.pensize(4)
    t.pencolor('black')
    t.pd()
    t.right(90)
    t.forward(40)
    t.pu()
    t.home()
    t.goto(0, 124)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(10)
    t.forward(80)
    t.pu()
    t.home()
    t.goto(0, 114)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(6)
    t.forward(80)
    t.pu()
    t.home()
    t.goto(0, 104)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(0)
    t.forward(80)
    # 左边的胡子
    t.pu()
    t.home()
    t.goto(0, 124)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(170)
    t.forward(80)
    t.pu()
    t.home()
    t.goto(0, 114)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(174)
    t.forward(80)
    t.pu()
    t.home()
    t.goto(0, 104)
    t.pensize(3)
    t.pencolor('black')
    t.pd()
    t.left(180)
    t.forward(80)
    t.pu()
    t.goto(-70, 70)
    t.pd()
    t.color('black', 'red')
    t.pensize(6)
    t.seth(-60)
    t.begin_fill()
    t.circle(80, 40)
    t.circle(80, 80)
    t.end_fill()
    t.pu()
    t.home()
    t.goto(-80, 70)
    t.pd()
    t.forward(160)
    t.pu()
    t.home()
    t.goto(-50, 50)
    t.pd()
    t.pensize(1)
    t.fillcolor("#eb6e1a")
    t.seth(40)
    t.begin_fill()
    t.circle(-40, 40)
    t.circle(-40, 40)
    t.seth(40)
    t.circle(-40, 40)
    t.circle(-40, 40)
    t.seth(220)
    t.circle(-80, 40)
    t.circle(-80, 40)
    t.end_fill()
    # 领带
    t.pu()
    t.goto(-70, 12)
    t.pensize(14)
    t.pencolor('red')
    t.pd()
    t.seth(-20)
    t.circle(200, 30)
    t.circle(200, 10)
    # 铃铛
    t.pu()
    t.goto(0, -46)
    t.pd()
    t.pensize(3)
    t.color("black", '#f8d102')
    t.begin_fill()
    t.circle(25)
    t.end_fill()
    t.pu()
    t.goto(-5, -40)
    t.pd()
    t.pensize(2)
    t.color("black", '#79675d')
    t.begin_fill()
    t.circle(5)
    t.end_fill()
    t.pensize(3)
    t.right(115)
    t.forward(7)
    t.mainloop()
    

    3.小黄人
    在这里插入图片描述

    import turtle as t
    # t = turtle.Turtle()
    wn = t.Screen()
    t.colormode(255)
    t.hideturtle()
    t.speed(0)
    t.penup()
    t.pensize(4)
    t.goto(100,0)
    t.pendown()
    t.left(90)
    t.color((0,0,0),(255,255,0))
    #身体绘制上色
    t.begin_fill()
    t.forward(200)
    t.circle(100,180)
    t.forward(200)
    t.circle(100,180)
    t.end_fill()
    #右眼睛绘制上色
    t.pensize(12)
    t.penup()
    t.goto(-100,200)
    t.pendown()
    t.right(100)
    t.circle(500,23)
    t.pensize(3)
    t.penup()
    t.goto(0,200)
    t.pendown()
    t.seth(270)
    t.color("black","white")
    t.begin_fill()
    t.circle(30)
    t.end_fill()
    t.penup()
    t.goto(15,200)
    t.pendown()
    t.color("black","black")
    t.begin_fill()
    t.circle(15)
    t.end_fill()
    t.penup()
    t.goto(35,205)
    t.color("black","white")
    t.begin_fill()
    t.circle(5)
    t.end_fill()
    #左眼睛绘制上色
    t.pensize(3)
    t.penup()
    t.goto(0,200)
    t.pendown()
    t.seth(90)
    t.color("black","white")
    t.begin_fill()
    t.circle(30)
    t.end_fill()
    t.penup()
    t.goto(-15,200)
    t.pendown()
    t.color("black","black")
    t.begin_fill()
    t.circle(15)
    t.end_fill()
    t.penup()
    t.goto(-35,205)
    t.color("black","white")
    t.begin_fill()
    t.circle(5)
    t.end_fill()
    #嘴绘制上色
    t.penup()
    t.goto(-20,100)
    t.pendown()
    t.seth(270)
    t.color("black","white")
    t.begin_fill()
    t.circle(20,180)
    t.left(90)
    t.forward(40)
    t.end_fill()
    #裤子绘制上色
    t.penup()
    t.goto(-100,0)
    t.pendown()
    t.seth(0)
    t.color("black","blue")
    t.begin_fill()
    t.forward(20)
    t.left(90)
    t.forward(40)
    t.right(90)
    t.forward(160)
    t.right(90)
    t.forward(40)
    t.left(90)
    t.forward(20)
    t.seth(270)
    t.penup()
    t.goto(-100,0)
    t.circle(100,180)
    t.end_fill()
    #左裤子腰带
    t.penup()
    t.goto(-70,20)
    t.pendown()
    t.color("black","blue")
    t.begin_fill()
    t.seth(45)
    t.forward(15)
    t.left(90)
    t.forward(60)
    t.seth(270)
    t.forward(15)
    t.left(40)
    t.forward(50)
    t.end_fill()
    t.left(180)
    t.goto(-70,30)
    t.dot()
    #右裤腰带
    t.penup()
    t.goto(70,20)
    t.pendown()
    t.color("black","blue")
    t.begin_fill()
    t.seth(135)
    t.forward(15)
    t.right(90)
    t.forward(60)
    t.seth(270)
    t.forward(15)
    t.right(40)
    t.forward(50)
    t.end_fill()
    t.left(180)
    t.goto(70,30)
    t.dot()
    #脚
    t.penup()
    t.goto(4,-100)
    t.pendown()
    t.seth(270)
    t.color("black","black")
    t.begin_fill()
    t.forward(30)
    t.left(90)
    t.forward(40)
    t.seth(20)
    t.circle(10,180)
    t.circle(400,2)
    t.seth(90)
    t.forward(20)
    t.goto(4,-100)
    t.end_fill()
    t.penup()
    t.goto(-4,-100)
    t.pendown()
    t.seth(270)
    t.color("black","black")
    t.begin_fill()
    t.forward(30)
    t.right(90)
    t.forward(40)
    t.seth(20)
    t.circle(10,-225)
    t.circle(400,-3)
    t.seth(90)
    t.forward(21)
    t.goto(-4,-100)
    t.end_fill()
    #左手
    t.penup()
    t.goto(-100,50)
    t.pendown()
    t.seth(225)
    t.color("black","yellow")
    t.begin_fill()
    t.forward(40)
    t.left(90)
    t.forward(35)
    t.seth(90)
    t.forward(50)
    t.end_fill()
    #右手
    t.penup()
    t.goto(100,50)
    t.pendown()
    t.seth(315)
    t.color("black","yellow")
    t.begin_fill()
    t.forward(40)
    t.right(90)
    t.forward(36)
    t.seth(90)
    t.forward(50)
    t.end_fill()
    #
    t.penup()
    t.goto(0,-100)
    t.pendown()
    t.forward(30)
    #
    t.penup()
    t.goto(0,-20)
    t.pendown()
    t.color("yellow")
    t.begin_fill()
    t.seth(45)
    t.forward(20)
    t.circle(10,180)
    t.right(90)
    t.circle(10,180)
    t.forward(20)
    t.end_fill()
    #
    t.penup()
    t.color("black")
    t.goto(-100,-20)
    t.pendown()
    t.circle(30,90)
    t.penup()
    t.goto(100,-20)
    t.pendown()
    t.circle(30,-90)
    #头顶
    t.penup()
    t.goto(2,300)
    t.pendown()
    t.begin_fill()
    t.seth(135)
    t.circle(100,40)
    t.end_fill()
    t.penup()
    t.goto(2,300)
    t.pendown()
    t.begin_fill()
    t.seth(45)
    t.circle(100,40)
    t.exitonclick()
    

    4.樱花树
    在这里插入图片描述

    from turtle import *
    from random import *
    from math import *
    class Tree:
        def __init__(self):
            setup(1000, 700)
            bgcolor(1, 1, 1)  # 背景色
            # ht()  # 隐藏turtle
            speed(10)  # 速度 1-10渐进,0 最快
            # tracer(1, 100)    # 设置绘图屏幕刷新频率,参数1设置在正常刷新频次的第参数1次刷新,参数2设置每次刷新的时延
            tracer(0, 0)
            pu()  # 抬笔
            backward(100)
            # 保证笔触箭头方向始终不向下,此处使其左转90度,而不是右转
            left(90)  # 左转90度
            backward(300)  # 后退300
        def tree(self, n, l):
            pd()  # 下笔
            # 阴影效果
            t = cos(radians(heading() + 45)) / 8 + 0.25
            pencolor(t, t, t)
            pensize(n / 1.2)
            forward(l)  # 画树枝
            if n > 0:
                b = random() * 15 + 10  # 右分支偏转角度
                c = random() * 15 + 10  # 左分支偏转角度
                d = l * (random() * 0.25 + 0.7)  # 下一个分支的长度
                # 右转一定角度,画右分支
                right(b)
                self.tree(n - 1, d)
                # 左转一定角度,画左分支
                left(b + c)
                self.tree(n - 1, d)
                # 转回来
                right(c)
            else:
                # 画叶子
                right(90)
                n = cos(radians(heading() - 45)) / 4 + 0.5
                pencolor(n, n * 0.8, n * 0.8)
                fillcolor(n, n * 0.8, n * 0.8)
                begin_fill()
                circle(3)
                left(90)
                end_fill()
                # 添加0.3倍的飘落叶子
                if random() > 0.7:
                    pu()
                    # 飘落
                    t = heading()
                    an = -40 + random() * 40
                    setheading(an)
                    dis = int(800 * random() * 0.5 + 400 * random() * 0.3 + 200 * random() * 0.2)
                    forward(dis)
                    setheading(t)
                    # 画叶子
                    pd()
                    right(90)
                    n = cos(radians(heading() - 45)) / 4 + 0.5
                    pencolor(n * 0.5 + 0.5, 0.4 + n * 0.4, 0.4 + n * 0.4)
                    fillcolor(n, n * 0.8, n * 0.8)
                    begin_fill()
                    circle(2)
                    left(90)
                    end_fill()
                    pu()
                    # 返回
                    t = heading()
                    setheading(an)
                    backward(dis)
                    setheading(t)
                    # pass
            pu()
            backward(l)  # 退回
    def main():
        tree = Tree()
        tree.tree(12, 100)  # 递归7层
        done()
    if __name__ == '__main__':
        main()
    

    在这里插入图片描述

    #!/usr/bin/env python
    # coding=utf-8
    
    import turtle
    import random
    from turtle import *
    from time import sleep
    # 画樱花的躯干(60,t)
    def tree(branchLen, t):
        sleep(0.0005)
        if branchLen > 3:
            if 8 <= branchLen <= 12:
                if random.randint(0, 2) == 0:
                    t.color('snow')  # 白
                else:
                    t.color('lightcoral')  # 淡珊瑚色
                t.pensize(branchLen / 3)
            elif branchLen < 8:
                if random.randint(0, 1) == 0:
                    t.color('snow')
                else:
                    t.color('lightcoral')  # 淡珊瑚色
                t.pensize(branchLen / 2)
            else:
                t.color('sienna')  # 赭(zhě)色
                t.pensize(branchLen / 10)  # 6
            t.forward(branchLen)
            a = 1.5 * random.random()
            t.right(20 * a)
            b = 1.5 * random.random()
            tree(branchLen - 10 * b, t)
            t.left(40 * a)
            tree(branchLen - 10 * b, t)
            t.right(20 * a)
            t.up()
            t.backward(branchLen)
            t.down()
    # 掉落的花瓣
    def petal(m, t):
        for i in range(m):
            a = 200 - 400 * random.random()
            b = 10 - 20 * random.random()
            t.up()
            t.forward(b)
            t.left(90)
            t.forward(a)
            t.down()
            t.color('lightcoral')  # 淡珊瑚色
            t.circle(1)
            t.up()
            t.backward(a)
            t.right(90)
            t.backward(b)
    def main():
        # 绘图区域
        t = turtle.Turtle()
        # 画布大小
        w = turtle.Screen()
        t.hideturtle()  # 隐藏画笔
        t.getscreen().tracer(5, 0)
        w.screensize(bg='wheat')  # wheat小麦
        t.left(90)
        t.up()
        t.backward(150)
        t.down()
        t.color('sienna')
        # 画樱花的躯干
        tree(60, t)
        # 掉落的花瓣
        petal(200, t)
        w.exitonclick()
    main()
    

    在这里插入图片描述

    from turtle import *
    from random import *
    from math import *
    def tree(n, l):
        pd()  # 下笔
        # 阴影效果
        t = cos(radians(heading() + 45)) / 8 + 0.25
        pencolor(t, t, t)
        pensize(n / 4)
        forward(l)  # 画树枝
        if n > 0:
            b = random() * 15 + 10  # 右分支偏转角度
            c = random() * 15 + 10  # 左分支偏转角度
            d = l * (random() * 0.35 + 0.6)  # 下一个分支的长度
            # 右转一定角度,画右分支
            right(b)
            tree(n - 1, d)
            # 左转一定角度,画左分支
            left(b + c)
            tree(n - 1, d)
            # 转回来
            right(c)
        else:
            # 画叶子
            right(90)
            n = cos(radians(heading() - 45)) / 4 + 0.5
            pencolor(n, n, n)
            circle(2)
            left(90)
        pu()
        backward(l)  # 退回
    bgcolor(0.5, 0.5, 0.5)  # 背景色
    ht()  # 隐藏turtle
    speed(0)  # 速度,1-10渐进,0最快
    tracer(0, 0)
    left(90)  # 左转90度
    pu()  # 抬笔
    backward(300)  # 后退300
    tree(13, 100)  # 递归7层
    done()
    

    在这里插入图片描述

    from random import *
    from math import *
    def tree(n, l):
        setup(1000, 800)
        pd()  # 下笔
        # 阴影效果
        t = cos(radians(heading() + 45)) / 8 + 0.25
        pencolor(t, t, t)
        pensize(n / 3)
        forward(l)  # 画树枝
        if n > 0:
            b = random() * 15 + 10  # 右分支偏转角度
            c = random() * 15 + 10  # 左分支偏转角度
            d = l * (random() * 0.25 + 0.7)  # 下一个分支的长度
            # 右转一定角度,画右分支
            right(b)
            tree(n - 1, d)
            # 左转一定角度,画左分支
            left(b + c)
            tree(n - 1, d)
            # 转回来
            right(c)
        else:
            # 画叶子
            right(90)
            n = cos(radians(heading() - 45)) / 4 + 0.5
            pencolor(n, n * 0.8, n * 0.8)
            circle(3)
            left(90)
            # 添加0.3倍的飘落叶子
            if (random() > 0.7):
                pu()
                # 飘落
                t = heading()
                an = -40 + random() * 40
                setheading(an)
                dis = int(800 * random() * 0.5 + 400 * random() * 0.3 + 200 * random() * 0.2)
                forward(dis)
                setheading(t)
                # 画叶子
                pd()
                right(90)
                n = cos(radians(heading() - 45)) / 4 + 0.5
                pencolor(n * 0.5 + 0.5, 0.4 + n * 0.4, 0.4 + n * 0.4)
                circle(2)
                left(90)
                pu()
                # 返回
                t = heading()
                setheading(an)
                backward(dis)
                setheading(t)
        pu()
        backward(l)  # 退回
    bgcolor(0.5, 0.5, 0.5)  # 背景色
    ht()  # 隐藏turtle
    speed(0)  # 速度,1-10渐进,0最快
    tracer(0, 0)
    pu()  # 抬笔
    backward(100)
    left(90)  # 左转90度
    pu()  # 抬笔
    backward(300)  # 后退300
    tree(12, 100)  # 递归7层
    done()
    

    5.皮卡丘
    在这里插入图片描述

    # coding:utf-8
    import turtle as t
    import time
    # 皮卡丘
    # 基础设置
    t.screensize(800, 600)
    t.pensize(2)  # 设置画笔的大小
    t.speed(10)  # 设置画笔速度为10
    # 画左偏曲线函数
    def radian_left(ang, dis, step, n):
        for i in range(n):
            dis += step  # dis增大step
            t.lt(ang)  # 向左转ang度
            t.fd(dis)  # 向前走dis的步长
    def radian_right(ang, dis, step, n):
        for i in range(n):
            dis += step
            t.rt(ang)  # 向左转ang度
            t.fd(dis)  # 向前走dis的步长
    # 画耳朵
    def InitEars():
        t.color("black", "yellow")
        # 左耳朵曲线
        t.pu()  # 提笔
        t.goto(-50, 100)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(110)  # 画笔角度
        t.begin_fill()
        radian_left(1.2, 0.4, 0.1, 40)
        t.setheading(270)  # 画笔角度
        radian_left(1.2, 0.4, 0.1, 40)
        t.setheading(44)  # 画笔角度
        t.forward(32)
        t.end_fill()
        # 右耳朵曲线
        t.pu()  # 提笔
        t.goto(50, 100)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(70)  # 画笔角度
        t.begin_fill()
        radian_right(1.2, 0.4, 0.1, 40)
        t.setheading(270)  # 画笔角度
        radian_right(1.2, 0.4, 0.1, 40)
        t.setheading(136)  # 画笔角度
        t.forward(32)
        t.end_fill()
        # 耳朵黑
        t.begin_fill()
        t.fillcolor("black")
        t.pu()  # 提笔
        t.goto(88, 141)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(35)  # 画笔角度
        radian_right(1.2, 1.6, 0.1, 16)
        t.setheading(270)  # 画笔角度
        radian_right(1.2, 0.4, 0.1, 25)
        t.setheading(132)  # 画笔角度
        t.forward(31)
        t.end_fill()
        t.begin_fill()
        t.fillcolor("black")
        t.pu()  # 提笔
        t.goto(-88, 141)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(145)  # 画笔角度
        radian_left(1.2, 1.6, 0.1, 16)
        t.setheading(270)  # 画笔角度
        radian_left(1.2, 0.4, 0.1, 25)
        t.setheading(48)  # 画笔角度
        t.forward(31)
        t.end_fill()
    # 画尾巴
    def InitTail():
        # 尾巴
        t.begin_fill()
        t.fillcolor("yellow")
        t.pu()  # 提笔
        t.goto(64, -140)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(10)  # 画笔角度
        t.forward(20)
        t.setheading(90)  # 画笔角度
        t.forward(20)
        t.setheading(10)  # 画笔角度
        t.forward(10)
        t.setheading(80)  # 画笔角度
        t.forward(100)
        t.setheading(35)  # 画笔角度
        t.forward(80)
        t.setheading(260)  # 画笔角度
        t.forward(100)
        t.setheading(205)  # 画笔角度
        t.forward(40)
        t.setheading(260)  # 画笔角度
        t.forward(37)
        t.setheading(205)  # 画笔角度
        t.forward(20)
        t.setheading(260)  # 画笔角度
        t.forward(25)
        t.setheading(175)  # 画笔角度
        t.forward(30)
        t.setheading(100)  # 画笔角度
        t.forward(13)
        t.end_fill()
    # 画脚
    def InitFoots():
        # 脚
        t.begin_fill()
        t.fillcolor("yellow")
        t.pensize(2)
        t.pu()  # 提笔
        t.goto(-70, -200)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(225)  # 画笔角度
        radian_left(0.5, 1.2, 0, 12)
        radian_left(35, 0.6, 0, 4)
        radian_left(1, 1.2, 0, 18)
        t.setheading(160)  # 画笔角度
        t.forward(13)
        t.end_fill()
        t.begin_fill()
        t.fillcolor("yellow")
        t.pensize(2)
        t.pu()  # 提笔
        t.goto(70, -200)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(315)  # 画笔角度
        radian_right(0.5, 1.2, 0, 12)
        radian_right(35, 0.6, 0, 4)
        radian_right(1, 1.2, 0, 18)
        t.setheading(20)  # 画笔角度
        t.forward(13)
        t.end_fill()
    # 画身体
    def InitBody():
        # 外形轮廓
        t.begin_fill()
        t.pu()  # 提笔
        t.goto(112, 0)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(90)  # 画笔角度
        t.circle(112, 180)
        t.setheading(250)  # 画笔角度
        radian_left(1.6, 1.3, 0, 50)
        radian_left(0.8, 1.5, 0, 25)
        t.setheading(255)  # 画笔角度
        radian_left(0.4, 1.6, 0.2, 27)
        radian_left(2.8, 1, 0, 45)
        radian_right(0.9, 1.4, 0, 31)
        t.setheading(355)  # 画笔角度
        radian_right(0.9, 1.4, 0, 31)
        radian_left(2.8, 1, 0, 45)
        radian_left(0.4, 7.2, -0.2, 27)
        t.setheading(10)  # 画笔角度
        radian_left(0.8, 1.5, 0, 25)
        radian_left(1.6, 1.3, 0, 50)
        t.end_fill()
    def InitEyes():
        # 左眼睛
        t.begin_fill()
        t.fillcolor("black")
        t.pu()  # 提笔
        t.goto(-46, 10)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(90)  # 画笔角度
        t.circle(5, 360)
        t.end_fill()
        # 右眼睛
        t.begin_fill()
        t.fillcolor("black")
        t.pu()  # 提笔
        t.goto(46, 10)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(-90)  # 画笔角度
        t.circle(5, 360)
        t.end_fill()
    # 画脸
    def InitFace():
        # 脸蛋
        t.begin_fill()
        t.fillcolor("red")
        t.pu()  # 提笔
        t.goto(-63, -10)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(90)  # 画笔角度
        t.circle(10, 360)
        t.end_fill()
        t.begin_fill()
        t.fillcolor("red")
        t.pu()  # 提笔
        t.goto(63, -10)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(-90)  # 画笔角度
        t.circle(10, 360)
        t.end_fill()
        # 嘴巴
        t.pensize(2.2)
        t.pu()  # 提笔
        t.goto(0, 0)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(235)  # 画笔角度
        radian_right(5, 0.8, 0, 30)
        t.pu()  # 提笔
        t.goto(0, 0)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(305)  # 画笔角度
        radian_left(5, 0.8, 0, 30)
    # 画手
    def InitHands():
        # 左手
        t.pensize(2)
        t.pu()  # 提笔
        t.goto(-46, -100)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(285)  # 画笔角度
        radian_right(0.4, 1.2, 0, 26)
        radian_right(5, 0.35, 0, 26)
        radian_right(0.3, 1.2, 0, 15)
        # 右手
        t.pu()  # 提笔
        t.goto(46, -100)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(255)  # 画笔角度
        radian_left(0.4, 1.2, 0, 26)
        radian_left(5, 0.35, 0, 26)
        radian_left(0.3, 1.2, 0, 15)
    def CloseEyes():
        # 左眼睛
        t.pu()  # 提笔
        t.goto(-46, 12)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(180)  # 画笔角度
        t.forward(10)
        # 右眼睛
        t.pu()  # 提笔
        t.goto(46, 12)  # 笔头初始位置
        t.pd()  # 下笔
        t.setheading(0)  # 画笔角度
        t.forward(10)
    # 初始化
    def Init():
        InitEars()
        InitTail()
        InitFoots()
        InitBody()
        InitFace()
        InitHands()
        InitEyes()
    # 眨眼睛
    def Upgarde():
        InitEars()
        InitTail()
        InitFoots()
        InitBody()
        InitFace()
        InitHands()
        CloseEyes()
    def Upgarde_Init():
        InitEars()
        InitTail()
        InitFoots()
        InitBody()
        InitFace()
        InitHands()
        InitEyes()
    def main():
        Init()
        t.tracer(False)
        # 眨眼睛动画
        for i in range(30):
            if i % 2 == 0:
                t.reset()
                t.hideturtle()
                Upgarde()
                t.update()
                time.sleep(0.3)
            else:
                t.reset()
                t.hideturtle()
                Upgarde_Init()
                t.update()
                time.sleep(1)
    main()
    # 结束画笔
    t.done()
    

    6.钟表
    在这里插入图片描述

    # -*- coding:utf-8 –*-
    # 用turtlr画时钟
    # 以自定义shape的方式实现
    import turtle as t
    import datetime as d
    def skip(step):  # 抬笔,跳到一个地方
        t.penup()
        t.forward(step)
        t.pendown()
    def drawClock(radius):  # 画表盘
        t.speed(0)
        t.mode("logo")  # 以Logo坐标、角度方式
        t.hideturtle()
        t.pensize(7)
        t.home()  # 回到圆点
        for j in range(60):
            skip(radius)
            if (j % 5 == 0):
                t.forward(20)
                skip(-radius - 20)
            else:
                t.dot(5)
                skip(-radius)
            t.right(6)
    def makePoint(pointName, len):  # 钟的指针,时针、分针、秒针
        t.penup()
        t.home()
        t.begin_poly()
        t.back(0.1 * len)
        t.forward(len * 1.1)
        t.end_poly()
        poly = t.get_poly()
        t.register_shape(pointName, poly)  # 注册为一个shape
    def drawPoint():  # 画指针
        global hourPoint, minPoint, secPoint, fontWriter
        makePoint("hourPoint", 100)
        makePoint("minPoint", 120)
        makePoint("secPoint", 140)
        hourPoint = t.Pen()  # 每个指针是一只新turtle
        hourPoint.shape("hourPoint")
        hourPoint.shapesize(1, 1, 6)
        minPoint = t.Pen()
        minPoint.shape("minPoint")
        minPoint.shapesize(1, 1, 4)
        secPoint = t.Pen()
        secPoint.shape("secPoint")
        secPoint.pencolor('red')
        fontWriter = t.Pen()
        fontWriter.pencolor('gray')
        fontWriter.hideturtle()
    def getWeekName(weekday):
        weekName = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日']
        return weekName[weekday]
    def getDate(year, month, day):
        return "%s-%s-%s" % (year, month, day)
    def realTime():
        curr = d.datetime.now()
        curr_year = curr.year
        curr_month = curr.month
        curr_day = curr.day
        curr_hour = curr.hour
        curr_minute = curr.minute
        curr_second = curr.second
        curr_weekday = curr.weekday()
        t.tracer(False)
        secPoint.setheading(360 / 60 * curr_second)
        minPoint.setheading(360 / 60 * curr_minute)
        hourPoint.setheading(360 / 12 * curr_hour + 30 / 60 * curr_minute)
        fontWriter.clear()
        fontWriter.home()
        fontWriter.penup()
        fontWriter.forward(80)
        # 用turtle写文字
        fontWriter.write(getWeekName(curr_weekday), align="center", font=("Courier", 14, "bold"))
        fontWriter.forward(-160)
        fontWriter.write(getDate(curr_year, curr_month, curr_day), align="center", font=("Courier", 14, "bold"))
        t.tracer(True)
        print(curr_second)
        t.ontimer(realTime, 100)  # 每隔100毫秒调用一次realTime()
    def main():
        t.tracer(False)
        drawClock(160)
        drawPoint()
        realTime()
        t.tracer(True)
        t.mainloop()
    if __name__ == '__main__':
        main()
    

    7.汉诺塔
    在这里插入图片描述

    import turtle
    class Stack:
        def __init__(self):
            self.items = []
        def isEmpty(self):
            return len(self.items) == 0
        def push(self, item):
            self.items.append(item)
        def pop(self):
            return self.items.pop()
        def peek(self):
            if not self.isEmpty():
                return self.items[len(self.items) - 1]
        def size(self):
            return len(self.items)
    def drawpole_3():  # 画出汉诺塔的poles
        t = turtle.Turtle()
        t.hideturtle()
        def drawpole_1(k):
            t.up()
            t.pensize(10)
            t.speed(100)
            t.goto(400 * (k - 1), 100)
            t.down()
            t.goto(400 * (k - 1), -100)
            t.goto(400 * (k - 1) - 20, -100)
            t.goto(400 * (k - 1) + 20, -100)
        drawpole_1(0)  # 画出汉诺塔的poles[0]
        drawpole_1(1)  # 画出汉诺塔的poles[1]
        drawpole_1(2)  # 画出汉诺塔的poles[2]
    def creat_plates(n):  # 制造n个盘子
        plates = [turtle.Turtle() for i in range(n)]
        for i in range(n):
            plates[i].up()
            plates[i].hideturtle()
            plates[i].shape("square")
            plates[i].shapesize(1, 8 - i)
            plates[i].goto(-400, -90 + 20 * i)
            plates[i].showturtle()
        return plates
    def pole_stack():  # 制造poles的栈
        poles = [Stack() for i in range(3)]
        return poles
    def moveDisk(plates, poles, fp, tp):  # 把poles[fp]顶端的盘子plates[mov]从poles[fp]移到poles[tp]
        mov = poles[fp].peek()
        plates[mov].goto((fp - 1) * 400, 150)
        plates[mov].goto((tp - 1) * 400, 150)
        l = poles[tp].size()  # 确定移动到底部的高度(恰好放在原来最上面的盘子上面)
        plates[mov].goto((tp - 1) * 400, -90 + 20 * l)
    def moveTower(plates, poles, height, fromPole, toPole, withPole):  # 递归放盘子
        if height >= 1:
            moveTower(plates, poles, height - 1, fromPole, withPole, toPole)
            moveDisk(plates, poles, fromPole, toPole)
            poles[toPole].push(poles[fromPole].pop())
            moveTower(plates, poles, height - 1, withPole, toPole, fromPole)
    myscreen = turtle.Screen()
    drawpole_3()
    n = int(input("请输入汉诺塔的层数并回车:\n"))
    plates = creat_plates(n)
    poles = pole_stack()
    for i in range(n):
        poles[0].push(i)
    moveTower(plates, poles, n, 0, 2, 1)
    myscreen.exitonclick()
    

    8.高达
    在这里插入图片描述

    import turtle
    t=turtle.Turtle()
    turtle.Turtle().screen.delay(0)
    tleft=turtle.Turtle()
    #第一部分
    t.penup()
    t.goto(0,0)
    t.pendown()
    t.left(20)
    t.forward(110)
    t.left(25)
    t.forward(40)
    t.left(100)
    t.circle(180,20)
    t.right(120)
    t.forward(250)
    t.left(165)
    t.forward(250)
    t.right(100)
    t.forward(35)
    t.left(70)
    t.forward(45)
    t.left(70)
    t.forward(120)
    t.left(70)
    t.forward(80)
    t.left(80)
    t.forward(80)
    t.left(68)
    t.forward(120)
    t.left(180)
    t.forward(78)
    t.right(68)
    t.forward(60)
    t.right(75)
    t.forward(60)
    t.right(110)
    t.forward(15)
    t.left(38)
    t.forward(65)
    t.right(73)#五边形的直边
    t.forward(35)
    t.right(70)
    t.forward(65)
    t.right(68)
    t.forward(50)
    t.right(80)
    t.forward(50)
    t.penup()
    t.goto(-65,68)
    t.pendown()
    t.right(7)
    t.forward(350)
    t.right(165)
    t.forward(330)
    t.penup()
    t.goto(64,65)
    t.pendown()
    t.left(75)
    t.forward(350)
    t.left(165)
    t.forward(330)
    t.penup()
    t.goto(300,500)
    #第二部分
    tleft.left(180)
    tleft.right(20)
    tleft.forward(110)
    tleft.right(25)
    tleft.forward(40)
    tleft.right(100)
    tleft.circle(-180,20)
    tleft.left(120)
    tleft.forward(250)
    tleft.right(165)
    tleft.forward(250)
    tleft.left(100)
    tleft.forward(35)
    tleft.penup()
    tleft.goto(0,0)
    tleft.pendown()
    tleft.left(20)
    tleft.penup()
    tleft.forward(18)
    tleft.pendown()
    tleft.forward(50)#额头竖线
    tleft.penup()
    tleft.forward(110)#消除竖线
    tleft.pendown()
    tleft.left(90)
    tleft.forward(30)
    tleft.right(90)
    tleft.forward(60)
    tleft.right(90)
    tleft.forward(60)
    tleft.right(90)
    tleft.forward(60)
    tleft.right(90)
    tleft.forward(40)
    tleft.penup()
    tleft.forward(30)
    tleft.pendown()
    tleft.left(90)
    tleft.forward(30)
    tleft.right(180)
    tleft.forward(100)
    tleft.right(90)
    tleft.forward(80)
    tleft.right(90)
    tleft.forward(100)
    tleft.penup()
    tleft.goto(150,70)
    tleft.pendown()
    tleft.left(100)
    tleft.forward(40)
    tleft.right(80)
    tleft.circle(-333,40)
    tleft.right(160)
    tleft.forward(230)
    #右半部分
    tleft.left(100)
    tleft.forward(40)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    tleft.left(80)
    tleft.forward(20)
    tleft.left(100)
    tleft.forward(30)
    tleft.right(100)
    tleft.forward(20)
    tleft.right(80)
    tleft.forward(30)
    #右下部分
    tleft.left(70)
    tleft.forward(30)
    tleft.right(110)
    tleft.forward(40)
    tleft.right(60)
    tleft.forward(100)
    tleft.right(30)
    tleft.circle(200,20)
    tleft.left(10)
    tleft.forward(80)
    #右下部分goto
    tleft.penup()
    tleft.goto(145,-198)
    tleft.pendown()
    tleft.left(90)
    tleft.forward(30)
    tleft.right(30)
    tleft.forward(40)
    tleft.right(150)
    tleft.forward(30)
    tleft.backward(30)
    tleft.left(90)
    tleft.forward(100)
    tleft.right(90)
    tleft.forward(30)
    tleft.backward(30)
    tleft.left(90)
    tleft.right(30)
    tleft.circle(200,20)
    tleft.left(10)
    tleft.forward(50)
    #第三部分脸
    t2=turtle.Turtle()
    t2.penup()
    t2.goto(0,-80)
    #尖角
    t2.circle(150,extent=90)
    t2.pendown()
    t2.circle(150,extent=30)
    t2.penup()
    t2.circle(150,extent=18)
    t2.pendown()
    t2.circle(150,extent=27)
    t2.penup()
    t2.circle(150,extent=30)
    t2.pendown()
    t2.circle(150,extent=27)
    t2.penup()
    t2.circle(150,extent=18)
    t2.pendown()
    t2.circle(150,extent=30)
    t2.right(100)
    t2.forward(40)
    #左脸夹
    t2.left(80)
    t2.circle(333,40)
    t2.left(160)
    t2.forward(230)
    #左半部分
    t2.right(100)
    t2.forward(40)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(80)
    t2.forward(20)
    t2.right(100)
    t2.forward(30)
    t2.left(100)
    t2.forward(20)
    t2.left(80)
    t2.forward(30)
    t2.right(70)
    t2.forward(30)
    t2.left(110)
    t2.forward(40)
    t2.left(60)
    t2.forward(100)
    t2.left(30)
    t2.circle(-200,20)
    t2.right(10)
    t2.forward(80)
    t2.penup()
    t2.goto(-145,-198)#左脸颊
    t2.pendown()
    t2.right(90)
    t2.forward(30)
    t2.left(30)
    t2.forward(40)
    t2.left(150)
    t2.forward(30)
    t2.right(180)
    t2.forward(30)
    t2.left(90)
    t2.forward(100)
    t2.left(90)
    t2.forward(30)
    t2.left(180)
    t2.forward(30)
    t2.left(120)
    t2.circle(-200,20)
    t2.right(10)
    t2.forward(50)
    #左眼
    t2.right(135)
    t2.forward(70)
    t2.left(50)
    t2.forward(40)
    t2.left(20)
    t2.forward(20)
    t2.penup()
    t2.goto(-100,28)
    t2.pendown()
    t2.right(70)
    t2.forward(65)
    t2.left(50)
    t2.forward(40)
    t2.left(40)
    t2.forward(20)
    #左眼带
    t2.penup()
    t2.goto(-105,-10)
    t2.pendown()
    t2.right(100)
    t2.circle(120,extent=20)
    t2.circle(60,extent=80)
    t2.penup()
    t2.goto(-105,-13)
    t2.pendown()
    t2.right(100)
    t2.circle(120,extent=20)
    t2.circle(60,extent=80)
    t2.penup()
    t2.goto(-70,-40)
    t2.pendown()
    t2.left(10)
    t2.forward(30)
    t2.penup()
    t2.goto(-10,-40)
    t2.pendown()
    t2.left(35)
    t2.forward(30)
    t2.penup()
    t2.goto(-80,30)
    t2.pendown()
    t2.right(130)
    t2.forward(47)
    t2.left(50)
    t2.forward(35)
    t2.penup()
    t2.goto(-60,-45)
    t2.pendown()
    t2.right(98)
    t2.forward(60)
    t2.left(20)
    t2.forward(80)
    t2.left(70)
    t2.forward(10)
    t2.left(90)
    t2.forward(50)
    t2.right(60)
    t2.forward(30)
    t2.right(60)
    t2.forward(30)
    t2.right(60)
    t2.forward(50)
    t2.left(90)
    t2.forward(10)
    t2.left(75)
    t2.forward(80)
    t2.left(15)
    t2.forward(60)
    t2.penup()
    t2.goto(-80,-140)
    t2.pendown()
    t2.right(150)
    t2.circle(85,extent=45)
    t2.left(15)
    t2.forward(70)
    t2.left(15)
    t2.circle(55,extent=55)
    t2.penup()
    t2.goto(0,-175)
    t2.pendown()
    t2.left(18)
    t2.forward(170)
    #右眼
    tleft.left(135)
    tleft.forward(70)
    tleft.right(50)
    tleft.forward(40)
    tleft.right(20)
    tleft.forward(20)
    tleft.penup()
    tleft.goto(100,28)
    tleft.pendown()
    tleft.left(70)
    tleft.forward(65)
    tleft.right(50)
    tleft.forward(40)
    tleft.right(40)
    tleft.forward(20)
    #右眼带
    tleft.penup()
    tleft.goto(105,-10)
    tleft.pendown()
    tleft.left(100)
    tleft.circle(-120,extent=20)
    tleft.circle(-60,extent=80)
    tleft.penup()
    tleft.goto(105,-13)
    tleft.pendown()
    tleft.left(100)
    tleft.circle(-120,extent=20)
    tleft.circle(-60,extent=80)
    #右眼睛
    tleft.penup()
    tleft.goto(70,-40)
    tleft.pendown()
    tleft.right(10)
    tleft.forward(30)
    tleft.penup()
    tleft.goto(10,-40)
    tleft.pendown()
    tleft.right(35)
    tleft.forward(30)
    tleft.penup()
    tleft.goto(80,30)
    tleft.pendown()
    tleft.left(130)
    tleft.forward(47)
    tleft.right(50)
    tleft.forward(35)
    #鼻子
    tleft.penup()
    tleft.goto(0,-70)
    tleft.pendown()
    tleft.left(30)
    tleft.forward(20)
    tleft.left(72)
    tleft.forward(10)
    tleft.left(108)
    tleft.forward(20)
    tleft.right(42)
    tleft.forward(20)
    tleft.left(108)
    tleft.forward(10)
    tleft.left(72)
    tleft.forward(20)
    tleft.penup()
    tleft.goto(0,-90)
    tleft.pendown()
    tleft.left(42)
    tleft.forward(20)
    tleft.left(72)
    tleft.forward(10)
    tleft.left(108)
    tleft.forward(20)
    tleft.right(42)
    tleft.forward(20)
    tleft.left(108)
    tleft.forward(10)
    tleft.left(72)
    tleft.forward(20)
    tleft.penup()
    tleft.goto(200,500)
    turtle.done()
    

    9.星空
    在这里插入图片描述

    from turtle import *
    from random import random,randint
    screen = Screen()
    width ,height = 800,600
    screen.setup(width,height)
    screen.bgcolor("black")
    screen.mode("logo")
    screen.delay(0)#这里要设为0,否则很卡
    t = Turtle(visible = False,shape='circle')
    t.pencolor("white")
    t.fillcolor("white")
    t.penup()
    t.setheading(-90)
    t.goto(width/2,randint(-height/2,height/2))
    stars = []
    for i in range(200):
        star = t.clone()
        s =random() /3
        star.shapesize(s,s)
        star.speed(int(s*10))
        star.setx(width/2 + randint(1,width))
        star.sety( randint(-height/2,height/2))
        star.showturtle()
        stars.append(star)
    while True:
        for star in stars:
            star.setx(star.xcor() - 3 * star.speed())
            if star.xcor()<-width/2:
                star.hideturtle()
                star.setx(width/2 + randint(1,width))
                star.sety( randint(-height/2,height/2))
                star.showturtle()
    

    10.狮子头
    在这里插入图片描述

    import turtle as t
    def hair():  # 画头发
        t.penup()
        t.goto(-50, 150)
        t.pendown()
        t.fillcolor('#a2774d')
        t.begin_fill()
        for j in range(10):  # 重复执行10次
            t.setheading(60 - (j * 36))  # 每次调整初始角度
            t.circle(-50, 120)  # 画120度的弧
        t.end_fill()
    def face():  # 画脸
        t.penup()
        t.goto(0, 100)
        t.pendown()
        t.fillcolor('#f2ae20')
        t.begin_fill()
        t.setheading(180)
        t.circle(85)
        t.end_fill()
        # 下巴
        t.circle(85, 120)
        t.fillcolor('white')
        t.begin_fill()
        t.circle(85, 120)
        t.setheading(135)
        t.circle(100, 95)
        t.end_fill()
    def ears(dir):  # 画眼睛,dir用来设置方向,左右眼对称
        t.penup()
        t.goto((0 - dir) * 30, 90)
        t.setheading(90)
        t.pendown()
        t.fillcolor('#f2ae20')
        t.begin_fill()
        t.circle(dir * 30)
        t.end_fill()
        t.penup()
        t.goto((0 - dir) * 40, 85)
        t.setheading(90)
        t.pendown()
        t.fillcolor('white')
        t.begin_fill()
        t.circle(dir * 17)
        t.end_fill()
    def nose():  # 画鼻子
        t.penup()
        t.goto(20, 0)
        t.setheading(90)
        t.pendown()
        t.fillcolor('#a2774d')
        t.begin_fill()
        t.circle(20)
        t.end_fill()
    def eye(dir):  # 画耳朵,dir用来设置方向,左右耳对称
        t.penup()
        t.goto((0 - dir) * 30, 20)
        t.setheading(0)
        t.pendown()
        t.fillcolor('black')
        t.begin_fill()
        t.circle(10)
        t.end_fill()
    def mouth():  # 画嘴巴
        t.penup()
        t.goto(0, 0)
        t.setheading(-90)
        t.pendown()
        t.forward(50)
        t.setheading(0)
        t.circle(80, 30)
        t.penup()
        t.goto(0, -50)
        t.setheading(180)
        t.pendown()
        t.circle(-80, 30)
    hair()
    ears(1)
    ears(-1)
    face()
    eye(1)
    eye(-1)
    mouth()
    nose()
    t.done()
    

    11.捂脸
    在这里插入图片描述

    import turtle
    # 画指定的任意圆弧
    def arc(sa, ea, x, y, r):  # start angle,end angle,circle center,radius
        turtle.penup()
        turtle.goto(x, y)
        turtle.setheading(0)
        turtle.left(sa)
        turtle.fd(r)
        turtle.pendown()
        turtle.left(90)
        turtle.circle(r, (ea - sa))
        return turtle.position()
    turtle.hideturtle()
    # 画脸
    turtle.speed(5)
    turtle.setup(900, 600, 200, 200)
    turtle.pensize(5)
    turtle.right(90)
    turtle.penup()
    turtle.fd(100)
    turtle.left(90)
    turtle.pendown()
    turtle.begin_fill()
    turtle.pencolor("#B26A0F")  # head side color
    turtle.circle(150)
    turtle.fillcolor("#F9E549")  # face color
    turtle.end_fill()
    # 画嘴
    turtle.penup()
    turtle.goto(77, 20)
    turtle.pencolor("#744702")
    turtle.goto(0, 50)
    turtle.right(30)
    turtle.fd(110)
    turtle.right(90)
    turtle.pendown()
    turtle.begin_fill()
    turtle.fillcolor("#925902")  # mouth color
    turtle.circle(-97, 160)
    turtle.goto(92, -3)
    turtle.end_fill()
    turtle.penup()
    turtle.goto(77, -25)
    # 画牙齿
    turtle.pencolor("white")
    turtle.begin_fill()
    turtle.fillcolor("white")
    turtle.goto(77, -24)
    turtle.goto(-81, 29)
    turtle.goto(-70, 43)
    turtle.goto(77, -8)
    turtle.end_fill()
    turtle.penup()
    turtle.goto(0, -100)
    turtle.setheading(0)
    turtle.pendown()
    # 画左边眼泪
    turtle.left(90)
    turtle.penup()
    turtle.fd(150)
    turtle.right(60)
    turtle.fd(-150)
    turtle.pendown()
    turtle.left(20)
    turtle.pencolor("#155F84")  # tear side color
    turtle.fd(150)
    turtle.right(180)
    position1 = turtle.position()
    turtle.begin_fill()
    turtle.fillcolor("#7EB0C8")  # tear color
    turtle.fd(150)
    turtle.right(20)
    turtle.left(270)
    turtle.circle(-150, 18)
    turtle.right(52)
    turtle.fd(110)
    position2 = turtle.position()
    turtle.goto(-33, 90)
    turtle.end_fill()
    # 画右边眼泪
    turtle.penup()
    turtle.goto(0, 0)
    turtle.setheading(0)
    turtle.left(90)
    turtle.fd(50)
    turtle.right(150)
    turtle.fd(150)
    turtle.left(150)
    turtle.fd(100)
    turtle.pendown()
    turtle.begin_fill()
    turtle.fd(-100)
    turtle.fillcolor("#7EB0C8")  # tear color
    turtle.right(60)
    turtle.circle(150, 15)
    turtle.left(45)
    turtle.fd(66)
    turtle.goto(77, 20)
    turtle.end_fill()
    # 画眼睛
    turtle.penup()
    turtle.pencolor("#6C4E00")  # eye color
    turtle.goto(-65, 75)
    turtle.setheading(0)
    turtle.left(27)
    turtle.fd(38)
    turtle.pendown()
    turtle.begin_fill()
    turtle.fillcolor("#6C4E00")  # eye color
    turtle.left(90)
    turtle.circle(38, 86)
    turtle.goto(position2[0], position2[1])
    turtle.goto(position1[0], position1[1])
    turtle.end_fill()
    # 画手
    turtle.pencolor("#D57E18")  # hand side color
    turtle.begin_fill()
    turtle.fillcolor("#EFBD3D")  # hand color
    # 第一个手指
    arc(-110, 10, 110, -40, 30)
    turtle.circle(300, 35)
    turtle.circle(13, 120)
    turtle.setheading(-50)
    turtle.fd(20)
    turtle.setheading(130)
    # 第二个手指
    turtle.circle(200, 15)
    turtle.circle(12, 180)
    turtle.fd(40)
    turtle.setheading(137)
    # 第三个手指
    turtle.circle(200, 16)
    turtle.circle(12, 160)
    turtle.setheading(-35)
    turtle.fd(45)
    turtle.setheading(140)
    # 第四个手指
    turtle.circle(200, 13)
    turtle.circle(11, 160)
    turtle.setheading(-35)
    turtle.fd(40)
    turtle.setheading(145)
    # 第五个手指
    turtle.circle(200, 9)
    turtle.circle(10, 180)
    turtle.setheading(-31)
    turtle.fd(50)
    # 画最后手腕的部分
    turtle.setheading(-45)
    turtle.pensize(7)
    turtle.right(5)
    turtle.circle(180, 35)
    turtle.end_fill()
    turtle.begin_fill()
    turtle.setheading(-77)
    turtle.pensize(5)
    turtle.fd(50)
    turtle.left(-270)
    turtle.fd(7)
    turtle.pencolor("#EFBD3D")
    turtle.circle(30, 180)
    turtle.end_fill()
    # 测试
    # res=arc(70,220,90,50,300)
    # print(res[0],res[1])
    turtle.done()
    

    12.绘制多边形(自定义边的数目(2-6))
    在这里插入图片描述

    #SquareSpiral1.py
    import turtle as t
    # t = turtle.Pen()
    t.bgcolor("black")
    sides=eval(input("输入要绘制的边的数目,请输入2-6的数字!"))
    colors=["red","yellow","green","blue","orange","purple"]
    for x in range(150):
        t.pencolor(colors[x%sides])
        t.forward(x*3/sides+x)
        t.left(360/sides+1)
        t.width(x*sides/200)
    t.exitonclick()
    print("####结束####")
    

    13.绘制数码管日期
    在这里插入图片描述

    import turtle as t
    import datetime
    def drawGap(): #绘制数码管间隔
        t.penup()
        t.fd(5)
    def drawLine(draw):   #绘制单段数码管
        drawGap()
        t.pendown() if draw else t.penup()
        t.fd(40)
        drawGap()
        t.right(90)
    def drawDigit(d): #根据数字绘制七段数码管
        drawLine(True) if d in [2,3,4,5,6,8,9] else drawLine(False)
        drawLine(True) if d in [0,1,3,4,5,6,7,8,9] else drawLine(False)
        drawLine(True) if d in [0,2,3,5,6,8,9] else drawLine(False)
        drawLine(True) if d in [0,2,6,8] else drawLine(False)
        t.left(90)
        drawLine(True) if d in [0,4,5,6,8,9] else drawLine(False)
        drawLine(True) if d in [0,2,3,5,6,7,8,9] else drawLine(False)
        drawLine(True) if d in [0,1,2,3,4,7,8,9] else drawLine(False)
        t.left(180)
        t.penup()
        t.fd(20)
    def drawDate(date):
        t.pencolor("red")
        for i in date:
            if i == '-':
                t.write('年', font=("Arial", 18, "normal"))
                t.pencolor("green")
                t.fd(40)
            elif i == '=':
                t.write('月', font=("Arial", 18, "normal"))
                t.pencolor("blue")
                t.fd(40)
            elif i == '+':  
                t.write('日', font=("Arial", 18, "normal"))
            else:
                drawDigit(eval(i))
    def main():
        t.setup(800, 350, 200, 200)
        t.penup()
        t.fd(-350)
        t.pensize(5)
        drawDate(datetime.datetime.now().strftime('%Y-%m=%d+'))
        t.hideturtle()
        t.exitonclick()
    main()
    

    14.小狗
    在这里插入图片描述

    from turtle import *
    import turtle as t
    t.screensize(500, 500)
    # 【头部轮廓】
    t.pensize(5)
    t.home()
    t.seth(0)
    t.pd()
    t.color('black')
    t.circle(20, 80)  # 0
    t.circle(200, 30)  # 1
    t.circle(30, 60)  # 2
    t.circle(200, 29.5)  # 3
    t.color('black')
    t.circle(20, 60)  # 4
    t.circle(-150, 22)  # 5
    t.circle(-50, 10)  # 6
    t.circle(50, 70)  # 7
    # 确定鼻头大概位置
    x_nose = t.xcor()
    y_nose = t.ycor()
    t.circle(30, 62)  # 8
    t.circle(200, 15)  # 9
    # 【鼻子】
    t.pu()
    t.goto(x_nose, y_nose + 25)
    t.seth(90)
    t.pd()
    t.begin_fill()
    t.circle(8)
    t.end_fill()
    # 【眼睛】
    t.pu()
    t.goto(x_nose + 48, y_nose + 55)
    t.seth(90)
    t.pd()
    t.begin_fill()
    t.circle(8)
    t.end_fill()
    # 【耳朵】
    t.pu()
    t.color('#444444')
    t.goto(x_nose + 100, y_nose + 110)
    t.seth(182)
    t.pd()
    t.circle(15, 45)  # 1
    t.color('black')
    t.circle(10, 15)  # 2
    t.circle(90, 70)  # 3
    t.circle(25, 110)  # 4
    t.rt(4)
    t.circle(90, 70)  # 5
    t.circle(10, 15)  # 6
    t.color('#444444')
    t.circle(15, 45)  # 7
    # 【身体】
    t.pu()
    t.color('black')
    t.goto(x_nose + 90, y_nose - 30)
    t.seth(-130)
    t.pd()
    t.circle(250, 28)  # 1
    t.circle(10, 140)  # 2
    t.circle(-250, 25)  # 3
    t.circle(-200, 25)  # 4
    t.circle(-50, 85)  # 5
    t.circle(8, 145)  # 6
    t.circle(90, 45)  # 7
    t.circle(550, 5)  # 8
    # 【尾巴】
    t.seth(0)
    t.circle(60, 85)  # 1
    t.circle(40, 65)  # 2
    t.circle(40, 60)  # 3
    t.lt(150)
    t.circle(-40, 90)  # 4
    t.circle(-25, 100)  # 5
    t.lt(5)
    t.fd(20)
    t.circle(10, 60)  # 6
    # 【背部】
    t.rt(80)
    t.circle(200, 35)
    # 【项圈】
    t.pensize(20)
    t.color('#F03C3F')
    t.lt(10)
    t.circle(-200, 25)  # 5
    # 【爱心铃铛】
    t.pu()
    t.fd(18)
    t.lt(90)
    t.fd(18)
    t.pensize(6)
    t.seth(35)
    t.color('#FDAF17')
    t.begin_fill()
    t.lt(135)
    t.fd(6)
    t.right(180)  # 画笔掉头
    t.circle(6, -180)
    t.backward(8)
    t.right(90)
    t.forward(6)
    t.circle(-6, 180)
    t.fd(15)
    t.end_fill()
    # 【前小腿】
    t.pensize(5)
    t.pu()
    t.color('black')
    t.goto(x_nose + 100, y_nose - 125)
    t.pd()
    t.seth(-50)
    t.fd(25)
    t.circle(10, 150)
    t.fd(25)
    # 【后小腿】
    t.pensize(4)
    t.pu()
    t.goto(x_nose + 314, y_nose - 125)
    t.pd()
    t.seth(-95)
    t.fd(25)
    t.circle(-5, 150)
    t.fd(2)
    t.hideturtle()
    t.done()
    

    15.小人发射爱心
    在这里插入图片描述

    import turtle as t
    from time import sleep
    def go_to(x, y):
        t.up()
        t.goto(x, y)
        t.down()
    def head(x, y, r):
        go_to(x, y)
        t.speed(20)
        t.circle(r)
        leg(x, y)
    def leg(x, y):
        t.right(90)
        t.forward(180)
        t.right(30)
        t.forward(100)
        t.left(120)
        go_to(x, y - 180)
        t.forward(100)
        t.right(120)
        t.forward(100)
        t.left(120)
        hand(x, y)
    def hand(x, y):
        go_to(x, y - 60)
        t.forward(100)
        t.left(60)
        t.forward(100)
        go_to(x, y - 90)
        t.right(60)
        t.forward(100)
        t.right(60)
        t.forward(100)
        t.left(60)
        eye(x, y)
    def eye(x, y):
        go_to(x - 50, y + 130)
        t.right(90)
        t.forward(50)
        go_to(x + 40, y + 130)
        t.forward(50)
        t.left(90)
    def big_Circle(size):
        t.speed(20)
        for i in range(150):
            t.forward(size)
            t.right(0.3)
    def line(size):
        t.speed(20)
        t.forward(51 * size)
    def small_Circle(size):
        t.speed(20)
        for i in range(210):
            t.forward(size)
            t.right(0.786)
    def heart(x, y, size):
        go_to(x, y)
        t.left(150)
        t.begin_fill()
        line(size)
        big_Circle(size)
        small_Circle(size)
        t.left(120)
        small_Circle(size)
        big_Circle(size)
        line(size)
        t.end_fill()
    def main():
        t.pensize(2)
        t.color('red', 'pink')
        head(-120, 100, 100)
        heart(250, -80, 1)
        go_to(100, -300)
        t.write("To: 智慧与美貌并存的", move=True, align="left", font=("楷体", 20, "normal"))
        t.done()
    main()
    
    展开全文
  • Python turtle学习笔记

    一丶turtle 库

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

    二丶基础概念

    2.1 画布(canvas)
    画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置。

    常用的画布方法有两个:screensize()和setup()。

    (1)turtle.screensize(canvwidth=None, canvheight=None, bg=None)

    参数分别为画布的宽(单位像素), 高, 背景颜色

    如:

    turtle.screensize(800, 600, “green”)
    turtle.screensize() #返回默认大小(400, 300)
    (2)turtle.setup(width=0.5, height=0.75, startx=None, starty=None)

    参数:

    width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例
    (startx, starty): 这一坐标表示 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心
    如:

    turtle.setup(width=0.6, height=0.6)
    turtle.setup(width=800, height=800, startx=100, starty=100)
    2.2 画笔
    在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟。

    这里我们描述小乌龟时使用了两个词语:标原点(位置),面朝x轴正方向(方向),turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态

    (1)画笔的属性

    画笔有颜色、画线的宽度等属性。

    1. turtle.pensize() :设置画笔的宽度;

    2. turtle.pencolor() :没有参数传入返回当前画笔颜色;传入参数设置画笔颜色,可以是字符串如"green", “red”,也可以是RGB 3元组。

      pencolor(‘brown’)
      tup = (0.2, 0.8, 0.55)
      pencolor(tup)
      pencolor()
      ‘#33cc8c’

    3. turtle.speed(speed) :设置画笔移动速度,画笔绘制的速度范围[0,10]整数, 数字越大越快

    (2)绘图命令

    操纵海龟绘图有着许多的命令,这些命令可以划分为3种:运动命令,画笔控制命令和全局控制命令

    画笔运动命令:

    命令 说明
    turtle.forward(distance) 向当前画笔方向移动distance像素长
    turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
    turtle.right(degree) 顺时针移动degree°
    turtle.left(degree) 逆时针移动degree°
    turtle.pendown() 移动时绘制图形,缺省时也为绘制
    turtle.goto(x,y) 将画笔移动到坐标为x,y的位置
    turtle.penup() 移动时不绘制图形,提起笔,用于另起一个地方绘制时用
    turtle.speed(speed) 画笔绘制的速度范围[0,10]整数
    turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
    画笔控制命令:

    命令 说明
    turtle.pensize(width) 绘制图形时的宽度
    turtle.pencolor() 画笔颜色
    turtle.fillcolor(colorstring) 绘制图形的填充颜色
    turtle.color(color1, color2) 同时设置pencolor=color1, fillcolor=color2
    turtle.filling() 返回当前是否在填充状态
    turtle.begin_fill() 准备开始填充图形
    turtle.end_fill() 填充完成;
    turtle.hideturtle() 隐藏箭头显示;
    turtle.showturtle() 与hideturtle()函数对应
    全局控制命令

    命令 说明
    turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会改变
    turtle.reset() 清空窗口,重置turtle状态为起始状态
    turtle.undo() 撤销上一个turtle动作
    turtle.isvisible() 返回当前turtle是否可见
    stamp() 复制当前图形
    turtle.write(s[,font=(“font-name”,font_size,“font_type”)]) 写文本,s为文本内容,font是字体的参数,里面分别为字体名称,大小和类型;font为可选项, font的参数也是可选项。

    三丶绘画实物举例

    (1).玫瑰花
    在这里插入图片描述

    from turtle import *
    
    #global pen and speed
    pencolor("black")
    fillcolor("red")
    speed(50)
    s=0.15
    #init poistion
    penup()
    goto(0,600*s)
    pendown()
    
    begin_fill()
    circle(200*s,30)
    for i in range(60):
        lt(1)
        circle(50*s,1)
    circle(200*s,30)
    for i in range(4):
        lt(1)
        circle(100*s,1)
    circle(200*s,50)
    for i in range(50):
        lt(1)
        circle(50*s,1)
    circle(350*s,65)
    for i in range(40):
        lt(1)
        circle(70*s,1)
    circle(150*s,50)
    for i in range(20):
        rt(1)
        circle(50*s,1)
    circle(400*s,60)
    for i in range(18):
        lt(1)
        circle(50*s,1)
    
    fd(250*s)
    rt(150)
    circle(-500*s,12)
    lt(140)
    circle(550*s,110)
    lt(27)
    circle(650*s,100)
    lt(130)
    circle(-300*s,20)
    rt(123)
    circle(220*s,57)
    end_fill()
    
    lt(120)
    fd(280*s)
    lt(115)
    circle(300*s,33)
    lt(180)
    circle(-300*s,33)
    for i in range(70):
        rt(1)
        circle(225*s,1)
    circle(350*s,104)
    lt(90)
    circle(200*s,105)
    circle(-500*s,63)
    
    penup()
    goto(170*s,-330*s)
    pendown()
    lt(160)
    for i in range(20):
        lt(1)
        circle(2500*s,1)
    for i in range(220):
        rt(1)
        circle(250*s,1)
        
    fillcolor('green')
    penup()
    goto(670*s,-480*s)
    pendown()
    rt(140)
    begin_fill()
    circle(300*s,120)
    lt(60)
    circle(300*s,120)
    end_fill()
    penup()
    goto(180*s,-850*s)
    pendown()
    rt(85)
    circle(600*s,40)
    
    penup()
    goto(-150*s,-1300*s)
    pendown()
    
    begin_fill()
    rt(120)
    circle(300*s,115)
    lt(75)
    circle(300*s,100)
    end_fill()
    penup()
    goto(430*s,-1370*s)
    pendown()
    rt(30)
    circle(-600*s,35)
    done()
    

    (2).太阳花
    在这里插入图片描述

    from turtle import *
    color('red','yellow')
    begin_fill()
    speed(100)
    while True:
    	forward(200)
    	left(170)
    	if abs(pos())<1:
    		break
    end_fill()
    done()
    
    展开全文
  • 使用python的turtle绘画滑稽脸

    千次阅读 2019-03-03 21:05:41
    这是借鉴了一位兄弟的代码,然后进行修改的,原来代码存在问题,用了2小时,自己修改,终于画出了滑稽脸,也算是对于今天学的turtle绘画库的一个小小的记录吧!(有错误希望各位看官指正啊) 编译器是:Atom python ...
  • Python-turtle绘画旅程第一站:哆啦a梦

    千次阅读 多人点赞 2019-05-20 10:32:23
    本次绘画主要用到的库是turtle(海龟绘图),主要用到的函数是circle(画圆)、fillcolor(填充颜色)、forward(画线)等。具体用到的函数在代码中都有注释。 铛铛铛铛!!!先给大家揭晓无敌可爱之哆啦a梦: ...
  • python零基础 turtle库绘制《小猪佩奇》里的小恐龙 python代码 #dinosaur.py import turtle as t #龙身 t.setup(1000,600) # 设置画布的大小 t.speed(10) # 设置画笔速度为10 ...t.goto(250,180) # 画笔前往坐标(250,18
  • Python使用turtle画一朵美丽的玫瑰花

    万次阅读 2019-06-23 07:21:29
    turtle 是 Python中一个强大的绘制图像的库,可以用来绘制各种图像,看看本文使用Python的turtle库画一朵美丽的玫瑰花。 但是需要计算各种角度、距离等,所以要想完成一幅复杂的图像还是有一定的难度的,此代码源自...
  • turtle实例1 玫瑰

    2019-11-05 18:13:04
    turtle绘制简易玫瑰 运行结果 完整代码 import turtle import time from random import* turtle.Turtle().screen.delay(0) turtle.pu() # turtle.hideturtle() turtle.speed(0) turtle.bgcolor('pink') turtle....
  • Python绘图Turtle库详解

    万次阅读 多人点赞 2019-09-09 11:29:30
    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形...
  • python turtle画高达

    千次阅读 多人点赞 2019-01-29 19:33:50
    import turtle t=turtle.Turtle() turtle.Turtle().screen.delay(0) tleft=turtle.Turtle() #第一部分 t.penup() t.goto(0,0) t.pendown() t.left(20) t.forward(110) t.left(25) ...t.circle(18...
  • #18 turtle模块

    2019-10-01 02:42:23
    这一节继续记录模块,本节将记录Python中一个非常重要的画图模块——turtle,Here we go! 一、turtle模块 turtle(海龟)模块是Python中强大的内置画图模块,可以模拟真实的画图环境以及画图步骤来画图。通常,...
  • Turtle Graphics

    2019-07-24 08:13:10
    Turtle graphics is an interesting and easy way to learn basic programming concepts. The Python turtle graphics system simulates a “turtle” that obeys commands to draw simple graphics. import the ...
  • 【python】使用turtle绘制立体五角星

    千次阅读 2019-09-09 15:00:57
    使用turtle绘制立体五角星 要求图形长这样 第一个三角形还是简单的,绘制五条边等距的转同角度就行 from turtle import * fillcolor( 'red') begin_fill() while True: forward(200) right(144) if abs(pos())...
  • 这是我按照这个算法写的python程序,因为不太懂turtle库,写完运行发现并不绘制也没有报错,是我的turtle用错了吗? ![图片说明](https://img-ask.csdn.net/upload/201911/18/1574066706_763213.png)
  • python的turtle画图常用函数

    千次阅读 2021-03-08 21:36:47
    画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置。常用的画布方法有两个:screensize()和setup()。 1)turtle.screensize(canvwidth, canvheight, bg):参数分别为画布的宽(单位像素), 高, ...
  • Python库中的turtledemo模块,里面有非常多的turtle实例。 rosette.py """ turtle-example-suite: tdemo_wikipedia3.py This example is inspired by the Wikipedia article on turtle graphics. (See example...
  • Turtle语法介绍

    千次阅读 2018-08-28 17:35:54
    Turtle句法 Turtle文档允许以紧凑的文本形式写下RDF图。它由一系列指令、三元组语句或空白行组成。 注释:在#之后给出,并继续到行的末尾。 简单的三元组是一个(主语、谓词、宾语)项的序列,由空格分隔,并在每...
  • python库之turtle库官方文档入门

    万次阅读 多人点赞 2019-08-15 13:10:48
    官方文档二、函数纵览1.Turtle methods(1)Turtle motion三、turtle绘图窗体布局三、turtle空间坐标体系四、turtle角度坐标体系五、RGB色彩模式:六、turtle画笔控制函数七、其他命令八、例子1.太阳花2.七段数码管 ...
  • python turtle 海龟绘图详解(官方文档中文版)

    千次阅读 多人点赞 2019-12-07 10:49:45
    源码:Lib/turtle.py 概述 海龟绘图很适合用来引导孩子学习编程。 最初来自于 Wally Feurzeig, Seymour Papert 和 Cynthia Solomon 于 1967 年所创造的 Logo 编程语言。 请想象绘图区有一只机器海龟,起始位置在 ...
  • Python之Turtle库Demo案例

    千次阅读 2020-08-25 00:42:25
    Turtle Demo 是 Python 自带的一个演示程序,无论是 Anaconda 安装还是使用原生 Python 安装都会有这个程序。下面所使用的各种图像,都是用turtle库绘制完成的。 下面就用pycharm给大家示范几个简单的案例: 演示...
  • turtle的一些用法

    2021-07-31 19:15:05
    1.导入turtle库的方法 import turtle 2.抬笔 turtle.penup() 3.落笔 turtle.pendown() 4.将当前点移动到指定坐标 turtle.goto(x,y) 5.向当前方向前进 turtle.fd() / turtle.forward() 6.从当前方向向左/右...
  • python 画图 turtle 模块介绍之(一)

    千次阅读 多人点赞 2018-10-03 13:51:22
    网址:https://docs.python.org/3/library/turtle.html?highlight=turtle#module-turtle   Turtle图形库是教小孩子学习编程的一种流行的方式,是1966年 Wally Feurzig 和 Seymour Paper开发的原始图标编程语言的...
  • Python学习(一):turtle库介绍与简单案例

    万次阅读 多人点赞 2018-07-24 17:59:01
    1.turtle库的介绍。 2.turtle库使用的函数说明。 3.使用turtle绘制七段数码管,显示当前日期。 4.改进代码,实现纪念日计天功能。 5.参考文献。 我学习Python主要跟着慕课上一个课程学习,感觉课程条理清楚,...
  • Turtle库是Python语言中一个非常流行的绘制图像的函数库,想象一只小乌龟,在一个横轴为x、纵轴为y的坐标系原点(0, 0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制图形。...
  • turtle库绘制小猪佩奇

    2019-07-30 18:05:28
    import turtle as t # 绘制小猪佩奇 t.pensize(4) t.hideturtle() t.colormode(255) t.color((255, 155, 192), "pink") t.setup(840, 700) t.speed(10) # 鼻子 t.penup() t.goto(-100,100) t....
  • python turtle绘图多个实例

    千次阅读 多人点赞 2020-06-05 09:46:29
    import turtle #引入一个绘图库 import math #因为后面用到了根号,所以引入了math库 turtle.setup(650,350,200,200) #确定画布的大小和位置 turtle.penup() #提起画笔 turtle.pendown() #放下画笔 turtle.pensize(7...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,615
精华内容 1,846
热门标签
关键字:

turtle18