精华内容
下载资源
问答
  • 本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。python turtle模块简介:python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle ...

    本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。

    python turtle模块简介:

    python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics)

    1.使用海龟绘图首先我们需要导入turtle,如下所示:

    from turtle import * #将turtle中的所有方法导入

    2.海龟绘图属性:

    (1)位置 (2)方向 (3)画笔(画笔的属性,颜色、画线的宽度)

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

    (1)运动命令:

    forward(degree) #向前移动距离degree代表距离

    backward(degree) #向后移动距离degree代表距离

    right(degree) #向右移动多少度

    left(degree) #向左移动多少度

    goto(x,y) #将画笔移动到坐标为x,y的位置

    stamp() #复制当前图形

    speed(speed) #画笔绘制的速度范围[0,10]整数

    (2)画笔控制命令:

    down() #移动时绘制图形,缺省时也为绘制

    up() #移动时不绘制图形

    pensize(width) #绘制图形时的宽度

    color(colorstring) #绘制图形时的颜色

    fillcolor(colorstring) #绘制图形的填充颜色

    fill(Ture)

    fill(false)

    4.关于turtle简介许多下面我们看个实例:

    (一)绘制正方形:

    import turtle

    import time

    #定义绘制时画笔的颜色

    turtle.color("purple")

    #定义绘制时画笔的线条的宽度

    turtle.size(5)

    #定义绘图的速度

    turtle.speed(10)

    #以0,0为起点进行绘制

    turtle.goto(0,0)

    #绘出正方形的四条边

    for i in range(4):

    turtle.forward(100)

    turtle.right(90)

    #画笔移动到点(-150,-120)时不绘图

    turtle.up()

    turtle.goto(-150,-120)

    #再次定义画笔颜色

    turtle.color("red")

    #在(-150,-120)点上打印"Done"

    turtle.write("Done")

    time.sleep(3)

    (二)绘制五角星:

    import turtle

    import time

    turtle.color("purple")

    turtle.pensize(5)

    turtle.goto(0,0)

    turtle.speed(10)

    for i in range(6):

    turtle.forward(100)

    turtle.right(144)

    turtle.up()

    turtle.forward(100)

    turtle.goto(-150,-120)

    turtle.color("red")

    turtle.write("Done")

    time.sleep(3)

    这里给出了两个简单的实例,大家可以根据上面的思路与方法进一步拓展,绘制出一些更复杂的图形。

    展开全文
  • 初识Python海龟画图.pdf

    2020-02-20 20:21:00
    初识Python海龟画图.pdf
  • Python里,海龟不仅可以画简单的黑线,还可以用它画更复杂的几何图形,用不同的颜色,甚至还可以给形状填色。一、从基本的正方形开始引入turtle模块并创建Pen对象:>>> importturtle>>> t = turtle.Pen()前面我们...

    在Python里,海龟不仅可以画简单的黑线,还可以用它画更复杂的几何图形,用不同的颜色,甚至还可以给形状填色。

    一、从基本的正方形开始

    引入turtle模块并创建Pen对象:

    >>> importturtle>>> t = turtle.Pen()

    前面我们用来创建正方形的代码如下:

    >>> t.forward(50)>>> t.left(90)>>> t.forward(50)>>> t.left(90)>>> t.forward(50)>>> t.left(90)>>> t,forward(50)

    此段代码太长,我们可以用for循环进行优化:

    >>>t.reset()>>> for x in range(1,5):

    t.forward(50)

    t.left(90)

    效果如下:

    922928-20170203181105995-248573770.png

    二、画星星

    我们只需把for循环做一些改动即可,代码如下:

    >>>t.reset()>>> for x in range(1,9): ##循环八次

    t.forward(100) ##前进100像素

    t.left(225) ##向左旋转225度

    效果如下:

    922928-20170203181844917-628381095.png

    然而我们还可以进一步改进,比如每次旋转175度,循环37次,代码如下:

    >>>t.reset()>>> for x in range(1,38):

    t.forward(100)

    t.left(175)

    效果如下:

    922928-20170203182133198-2116617976.png

    我们还可以画螺旋星,代码如下:

    >>>t.reset()>>> for x in range(1,20):

    t.forward(100)

    t.left(95)

    效果如下:

    922928-20170203182501058-1748806570.png

    现在让我们用if语句控制海龟的转向来绘制不同的星星。让海龟先转一个角度,然后下一次转一个不同的角度。

    在这里,我们先创建一个运行18次的循环(range(1,19)),然后让海龟向前移动100个像素(t.forward(100))。接下来是if语句(ifx%2 == 0),它的意思是:x除以2的余数是否等于0.如果x中的数字是偶数,我们让海龟左转175度(t.left(175)),否则(else)我们让它左转225度。代码如下:

    >>>t.reset()>>> for x in range(1,19):

    t.forward(100)if x % 2 ==0:

    t.left(175)else:

    t.left(225)

    效果如下:

    922928-20170203184817683-461816531.png

    三,画汽车

    试着画一辆小汽车,给自己树立一个小目标,说不定哪一天就实现了。

    (这段代码新增了color,begin_fill,end_fill,circle,setheading函数)

    ContractedBlock.gif

    ExpandedBlockStart.gif

    >>> importturtle>>> t =turtle.Pen()>>> t.color(1,0,0)>>>t.begin_fill()>>> t.forward(100)>>> t.left(90)>>> t.forward(20)>>> t.left(90)>>> t.forward(20)>>> t.right(90)>>> t.forward(20)>>> t.left(90)>>> t.forward(60)>>> t.left(90)>>> t.forward(20)>>> t.right(90)>>> t.forward(20)>>> t.left(90)>>> t.forward(20)>>> t.end_fill()

    车身

    ContractedBlock.gif

    ExpandedBlockStart.gif

    >>>t.color(0,0,0)>>>t.up()>>> t.forward(10)>>>t.down()>>>t.begin_fill()>>> t.circle(10)>>> t.end_fill()

    左车轮

    ContractedBlock.gif

    ExpandedBlockStart.gif

    >>>t.setheading(0)>>>t.up()>>> t.forward(90)>>> t.right(90)>>> t.forward(10)>>>t.setheading(0)>>>t.begin_fill()>>>t.down()>>> t.circle(10)>>> t.end_fill()

    右车轮

    整合后效果如下:

    922928-20170203192758698-201925732.png

    下面来集中介绍下新增的几个函数:

    1,color 是用来改变画笔颜色的。

    2,begin_fill 和 end_fill 是用来给画布上的一个区域填色的。

    3,circle 是用来画一个指定大小的圆。

    4, setheading 让海龟面向指定的方向。

    总结

    这次比上次更深入的运用了Python的turtle模块来画几个基本的几何图形,还有for循环和if语句来控制海龟在屏幕上的动作。同时改变了海龟的笔的颜色并给它所画的形状填色。

    展开全文
  • Python海龟turtle画图常见画图代码大全

    千次阅读 多人点赞 2021-09-05 22:22:27
    玫瑰花 import turtle # 设置初始位置 turtle.penup() # 提起画笔 turtle.left(90) # 逆时针旋转九十度 turtle.fd(200) # 向前移动一段距离 fd=forward turtle.pendown() # 放下画笔移动画笔开始绘制 ...

    转载于https://blog.csdn.net/July__July/article/details/99543992
    玫瑰花

    import turtle
    
    # 设置初始位置
    turtle.penup()  # 提起画笔
    turtle.left(90)  # 逆时针旋转九十度
    turtle.fd(200)  # 向前移动一段距离 fd=forward
    turtle.pendown()  # 放下画笔移动画笔开始绘制
    turtle.right(90)   # 顺时针旋转九十度
    
    # 花蕊
    turtle.fillcolor("red")  # 填充颜色
    turtle.begin_fill()  # 开始填充
    turtle.circle(10, 180)  # 画一圆,10是半径,180是弧度
    turtle.circle(25, 110)
    turtle.left(50)
    turtle.circle(60, 45)
    turtle.circle(20, 170)
    turtle.right(24)
    turtle.fd(30)
    turtle.left(10)
    turtle.circle(30, 110)
    turtle.fd(20)
    turtle.left(40)
    turtle.circle(90, 70)
    turtle.circle(30, 150)
    turtle.right(30)
    turtle.fd(15)
    turtle.circle(80, 90)
    turtle.left(15)
    turtle.fd(45)
    turtle.right(165)
    turtle.fd(20)
    turtle.left(155)
    turtle.circle(150, 80)
    turtle.left(50)
    turtle.circle(150, 90)
    turtle.end_fill()  # 结束填充
    
    # 花瓣1
    turtle.left(150)
    turtle.circle(-90, 70)
    turtle.left(20)
    turtle.circle(75, 105)
    turtle.setheading(60)  # urtle.setheading(angle) 或 turtle.seth(angle):改变行进方向 angle:行进方向的绝对角度,可以为负值
    turtle.circle(80, 98)
    turtle.circle(-90, 40)
    
    # 花瓣2
    turtle.left(180)
    turtle.circle(90, 40)
    turtle.circle(-80, 98)
    turtle.setheading(-83)
    
    # 叶子1
    turtle.fd(30)
    turtle.left(90)
    turtle.fd(25)
    turtle.left(45)
    turtle.fillcolor("green")
    turtle.begin_fill()
    turtle.circle(-80, 90)
    turtle.right(90)
    turtle.circle(-80, 90)
    turtle.end_fill()
    
    turtle.right(135)
    turtle.fd(60)
    turtle.left(180)
    turtle.fd(85)
    turtle.left(90)
    turtle.fd(80)
    
    # 叶子2
    turtle.right(90)
    turtle.right(45)
    turtle.fillcolor("green")
    turtle.begin_fill()
    turtle.circle(80, 90)
    turtle.left(90)
    turtle.circle(80, 90)
    turtle.end_fill()
    
    turtle.left(135)
    turtle.fd(60)
    turtle.left(180)
    turtle.fd(60)
    turtle.right(90)
    turtle.circle(200, 60)
    
    # 设置成画完不会自动退出
    turtle.done()
    

    画爱心

    import turtle
    import time
    
    
    # 画爱心的顶部
    def LittleHeart():
        for i in range(200):
            turtle.right(1)
            turtle.forward(2)
    
    
    # 输入表白的语句,默认I Love you
    love = input('Please enter a sentence of love, otherwise the default is "I Love you": ')   #
    # 输入署名或者赠谁,没有不执行
    me = input('Please enter pen name, otherwise the default do not execute: ')
    if love == '':
        love = 'I Love you'
    # 窗口大小
    turtle.setup(width=900,height=500)
    # 颜色
    turtle.color('red', 'pink')
    # 笔粗细
    turtle.pensize(3)
    # 速度
    turtle.speed(1)
    # 提笔
    turtle.up()
    # 隐藏笔
    turtle.hideturtle()
    # 去到的坐标,窗口中心为0,0
    turtle.goto(0, -180)
    turtle.showturtle()
    # 画上线
    turtle.down()
    turtle.speed(1)
    turtle.begin_fill()
    turtle.left(140)
    turtle.forward(224)
    # 调用画爱心左边的顶部
    LittleHeart()
    # 调用画爱右边的顶部
    turtle.left(120)
    LittleHeart()
    # 画下线
    turtle.forward(224)
    turtle.end_fill()
    turtle.pensize(5)
    turtle.up()
    turtle.hideturtle()
    # 在心中写字 一次
    turtle.goto(0, 0)
    turtle.showturtle()
    turtle.color('#CD5C5C', 'pink')
    # 在心中写字 font可以设置字体自己电脑有的都可以设 align开始写字的位置
    turtle.write(love, font=('gungsuh', 30,), align="center")
    turtle.up()
    turtle.hideturtle()
    time.sleep(2)
    # 在心中写字 二次
    turtle.goto(0, 0)
    turtle.showturtle()
    turtle.color('red', 'pink')
    turtle.write(love, font=('gungsuh', 30,), align="center")
    turtle.up()
    turtle.hideturtle()
    # 写署名
    if me != '':
        turtle.color('black', 'pink')
        time.sleep(2)
        turtle.goto(180, -180)
        turtle.showturtle()
        turtle.write(me, font=(20,), align="center", move=True)
    
    # 点击窗口关闭
    window = turtle.Screen()
    window.exitonclick()
    
    

    画樱花树

    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()
    

    画皮卡丘

    # 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()
    

    画实时时钟

    # -*- 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()
    

    画星空

    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()
    
        
        ~~~
        
    
    展开全文
  • 画之前肯定要知道规格图,我找了一个大致的图。 参考图片: 绘制大星的方法很简单,五角星的补角...代码: from turtle import * screensize(2000,2000,'white')#设置画布大小 #绘制旗面 pencolor('red') pu() goto(-
  • 关键字: 正文 | 内容今天这篇文章主要是介绍:python 海龟画图画一个正方形图案01—Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它...

    关键字:

    a7222b005f52a9cf9e2deff7244283f4590.gif

    正文 | 内容

    今天这篇文章主要是介绍:python 海龟画图画一个正方形图案

    01

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

    02

    9b5b9d48c9deaa654f20acaa4a66374b0aa.jpg

    03

    获取源码

    #海龟绘图importturtle

    t = turtle.Pen() #定义一个海龟,这块一定要写成大写的Pen()fori inrange(1000): ##从0开始到1000t.forward(i) # forward() | fd():向前移动指定的距离。t.color("red") #设置笔的颜色t.left(90) # left() | lt():以角度单位向左转动。

    04

    更多视频专辑

    微信ID:andyquanhua

    微信二维码, 扫一扫吧!

    f0a434879d43a4a0c7fda3c94ff498c1a82.png

    【投稿邮箱】315997972@qq.com

    【写作说明】以上内容分享给喜欢编程,有梦想的程序员,希望能帮助到你们。以上文章属于此公众号原创所有,如需转载请注明出处。

    【免责申明】本公众平台不是广告商,也没有为其他三方网站或者个人做广告宣传。此分享的源代码和文章是小编在项目中、学习中整理的一些认为不错的项目。用户产生的一些自愿下载或者付费行为,与平台没有直接关系。

    目前已有10000+优秀的程序员加入我们

    458ecbe08a95e6d4776bc3fb469cb544c59.gif

    fcfcdf13a656ccfac2a4cb4ad992f57ce86.gif

    946129b77c96c3ff0e466d0040d9c069499.gif

    ae454c0457630a4a37740ab39bdbd492ff2.gif

    21301f1087ef83efb16d312035f50ee439d.gif

    04f34e6fa876f8c389ecf35d8cbd1a9618a.gif

    8bfcad0214df3b6b196e8665bd640548a54.gif

    69304a6ac35cfbc75f721bf57bad2e3decb.gif

    1109a517041f0348006e36e8c2d384dd392.gif

    60cabfb2387b2a4eec2fe57e0dbca52a41b.gif

    b7942e923fd94ca9044d3c0b0f93c5e76d7.gif

    d8c363d3fc2af8b88acee79d692e782b983.gif

    本文分享自微信公众号 - 程序源代码(itcode)。

    如有侵权,请联系 support@oschina.cn 删除。

    本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

    展开全文
  • turtle的绘图方式非常简单直观——想象有一只尾巴上蘸着颜料的小海龟在电脑屏幕上爬行,随着它的移动就能画出线条来,turtle程序窗口的绘图区域使用直角坐标系,海龟初始位置在窗口绘图区正中的(0,0)点,头朝x轴的正...
  • python turtle模块即海龟绘图的使用方法,对于需要进行图形编程会有一定的借鉴价值。python turtle模块简介:python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics)1、.使用海龟绘图首先我们需要...
  • python海龟库中,表示颜色的方法有很多,总体来讲共分成以下两类。1. 用字符串表示颜色在turtle库中,我们常常用颜色所对应的英文单词来直观的表示颜色。例如:"red" 表示红色 "black" 表示黑色"blue"表示蓝色 ...
  • python海龟画图

    千次阅读 2021-01-15 03:03:39
    1.import turtle 导入海龟库 另一种导库方式为:from turtle import * (以下代码使用第一种,即import turtle的导库方式)2.turtle.speed() 设置画笔速度 括号内可填0-10的整数,1-10数字越大速度越快,0是最快的。...
  • 美国队长盾牌-精致版 Steven Rogers: A strong man who has known power all his life,they...这一步是为了偷懒 防止你的屏幕上到处都是小海龟 2.mainloop() 这个是保留画布,以便仔细观赏 不多bb,直接上代码 详细代码
  • Python海龟画图树形图

    2020-08-21 23:43:57
    Python利用海龟画图的程序,可绘出树形图。 运行需有python
  • Python海龟画图集合

    万次阅读 多人点赞 2019-01-21 19:46:02
    Python海龟画图集合 1. 小猪佩奇 2. 彩色螺旋线 3. 太极 4.美国队长盾牌 1. 小猪佩奇 # coding: utf-8 import turtle as t t.screensize(400, 300) t.pensize(4) # 设置画笔的大小 t.colormode(255) # 设置GBK...
  • python 海龟画图

    2021-09-21 08:27:26
    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 >...
  • 本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。 python turtle模块简介:  python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle ...
  • 展开全部# coding:utf-8import turtle as t# 绘制小猪5261佩奇# =======================================t.pensize(4)t.hideturtle()t.colormode(255)t.color((255, 155, 192), "pink")t.setup(840, 500)t.speed(10...
  • Python海龟画图模块不仅仅是画图。用它还能制作动画,制作多媒体游戏等更多创意作品。在这个叫《酷酷的爆炸效果》作品中。每一个爆炸效果其实都是一只海龟对象。只不过它们的造型在不断地变化。为了有很多效果同时...
  • Python海龟画图-初学者 目录 Python海龟画图-初学者... 1 Turtle库介绍... 1 1.1 Turtle模块:... 1 1.2 绘图原理:... 2 1.3 Turtle主要提供的类... 2 Turtle中的画布... 3 详细设置:... 5 2.3画布...
  • import turtle as t t.colormode(255) t.speed(0) t.bgcolor(0,0,0) def dbx(n): for i in range(1,n+1): t.fd(50) t.rt(360/n) for n in range(3,21): t.pencolor(255-10*n,0,0) ...t.exitonclick()
  • 如下图所示: 我们常用的就记着几个就可以,如下: 黑色:black 红色:red 白色:white 灰色:grey 橙色:orange 黄色:yellow 绿色:green 蓝色:blue 紫色:purple 粉色:pink
  • Python海龟画图常用指令

    千次阅读 2020-06-16 20:59:42
    Python海龟画图常用指令: turtle.forward(a)#或turtle.fd(a) 前进,距离为a# turtle.back(a)#或turtle.bk(a) 后退,距离为a turtle.right(a)#或turtle.rt(a) 右转,角度
  • python海龟画图(5)彩虹

    2021-10-26 15:40:01
    import turtle as t list1=["orangered","orange","yellow","lightgreen","cyan","deepskyblue","magenta"] def hx(r,c): t.pu() t.seth(90) t.goto(100+r,-100) t.pd() t.pensize(10) t.circle(100+r,180) ...
  • python代码 #dinosaur.py import turtle as t #龙身 t.setup(1000,600) # 设置画布的大小 t.speed(10) # 设置画笔速度为10 t.pensize(5) # 设置画笔大小 t.pencolor("SpringGreen4") # 设置画笔颜色 t.penup() # ...
  • python海龟画圆代码

    2020-11-20 20:34:27
    python海龟游戏制作说到几何,海龟作图可以绘制很多有趣的形状,而不只是直线。我们将在2.4节中再次回到正方形,但现在,让我们来更多地了解一下Python Turtle库。我们再来修改一行代码:t.forward(x)。我们在前面...
  • Python 如何调用graphics库画圆弧,半圆等import?turtleturtle.left(135)turtle.circle(120,90)turtle.done()pythone3python turtle如何画椭圆1、先楚画笔的用法。2、再搞清楚椭圆的函数。3、别人的代码,自己多调试...
  • 小白向,很简单的一个简笔画,是一个小猪佩奇,可以放在程序中,增添些趣味性,下载后是txt文本格式需要转成py格式或者直接复制放在自己的代码里,格式是本人第一次发内容望多多支持!
  • 国旗,五星红旗,星星的大小和朝向略有瑕疵,正在改进中,请勿较真。 import turtle as t import math import random def d5jx(cd,wz1,wz2,jd): t.penup() t.goto(wz1,wz2) t.pendown() ... for i in ...
  • 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、...
  • import turtle as t import math t.speed(10) def yuan(r1,c,x,y): t.pu() t.goto(x,y) t.pd() t.pencolor(c) t.fillcolor(c) t.begin_fill() t.circle(r1) t.end_fill() ... t.goto(0,r...
  • Python海龟画图工具绘制叮当猫程序发布时间:2020-07-16 03:29:07来源:51CTO阅读:2248作者:何老师编程使用海龟画图工具,画一个叮当猫。先学习几个基本函数:import turtle;#引入海龟工具模块t=turtle.Pen()#创建...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,265
精华内容 906
关键字:

python海龟画图代码大全

python 订阅
友情链接: 08_vdma_test.sdk.rar