欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python海龜turtle基礎(chǔ)知識(shí)大全以及畫圖集合實(shí)例

 更新時(shí)間:2023年04月20日 10:00:21   作者:M_Q_T  
turtle是一個(gè)簡(jiǎn)單的繪圖工具,它提供了一個(gè)海龜,你可以把它理解為一個(gè)機(jī)器人,只聽得懂有限的指令,下面這篇文章主要給大家介紹了關(guān)于Python海龜turtle基礎(chǔ)知識(shí)大全以及畫圖集合的相關(guān)資料,需要的朋友可以參考下

Turtle圖形庫(kù)

Turtle 庫(kù)是 Python 內(nèi)置的圖形化模塊,屬于標(biāo)準(zhǔn)庫(kù)之一,位于 Python 安裝目錄的 lib 文件夾下,常用函數(shù)有以下幾種:

一.Turtle繪圖的基礎(chǔ)知識(shí)

畫布是turtle用于繪圖區(qū)域,我們可以設(shè)置它的大小和初始位置。

1.設(shè)置畫布大小

turtle.screensize(canvwidth=None, canvheight=None, bg=None),參數(shù)分別對(duì)應(yīng)畫布的寬(單位像素), 高, 背景顏色。

turtle.screensize(1000,800, "blue")
turtle.screensize() #返回默認(rèn)大小(500, 400)
turtle.setup(width=0.5, height=0.75, startx=None, starty=None)

width, height: 輸入寬和高為整數(shù)時(shí), 表示像素; 為小數(shù)時(shí), 表示占據(jù)電腦屏幕的比例,(startx, starty): 這一坐標(biāo)表示矩形窗口左上角頂點(diǎn)的位置, 如果為空,則窗口位于屏幕中心。

2.畫筆的狀態(tài)

在畫布上,默認(rèn)有一個(gè)坐標(biāo)原點(diǎn)為畫布中心的坐標(biāo)軸,坐標(biāo)原點(diǎn)上有一只面朝x軸正方向小烏龜。這里我們描述小烏龜時(shí)使用了兩個(gè)詞語(yǔ):坐標(biāo)原點(diǎn)(位置),面朝x軸正方向(方向), turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態(tài)。

turtle.pensize() # 設(shè)置畫筆的寬度;
turtle.pencolor()# 沒有參數(shù)傳入,返回當(dāng)前畫筆顏色,傳入?yún)?shù)設(shè)置畫筆顏色,可以是字符串如"green", "red",也可以是RGB 3元組。
turtle.speed(speed)#設(shè)置畫筆移動(dòng)速度,畫筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大越快。

3.使用turtle繪圖主要分為3種命令代碼,分別為運(yùn)動(dòng)命令、畫筆控制命令和全局控制命令。

畫筆運(yùn)動(dòng)命令代碼

  • turtle.forward(distance)—向當(dāng)前畫筆方向移動(dòng)distance像素長(zhǎng)度
  • turtle.backward(distance)—向當(dāng)前畫筆相反方向移動(dòng)distance像素長(zhǎng)度
  • turtle.right(degree)—順時(shí)針移動(dòng)degree° turtle.left(degree)—逆時(shí)針移動(dòng)degree°
  • turtle.pendown()—移動(dòng)時(shí)繪制圖形,缺省時(shí)也為繪制 turtle.goto(x,y)—將畫筆移動(dòng)到坐標(biāo)為x,y的位置
  • turtle.penup()—提起筆移動(dòng),不繪制圖形,用于另起一個(gè)地方繪制
  • turtle.circle()—畫圓,半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓 setx( )—將當(dāng)前x軸移動(dòng)到指定位置
  • sety( )—將當(dāng)前y軸移動(dòng)到指定位置 setheading(angle)—設(shè)置當(dāng)前朝向?yàn)閍ngle角度
  • home()—設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東 dot®—繪制一個(gè)指定直徑和顏色的圓點(diǎn)

畫筆控制命令代碼

  • turtle.fillcolor(colorstring)—繪制圖形的填充顏色 turtle.color(color1,color2)—同時(shí)設(shè)置pencolor=color1, fillcolor=color2
  • turtle.filling()—返回當(dāng)前是否在填充狀態(tài) turtle.begin_fill()—準(zhǔn)備開始填充圖形
  • turtle.end_fill()—填充完成 turtle.hideturtle()—隱藏畫筆的turtle形狀
  • turtle.showturtle()—顯示畫筆的turtle形狀

全局控制命令代碼

  • turtle.clear()—清空turtle窗口,但是turtle的位置和狀態(tài)不會(huì)改變
  • turtle.reset()—清空窗口,重置turtle狀態(tài)為起始狀態(tài) turtle.undo()—撤銷上一個(gè)turtle動(dòng)作
  • turtle.isvisible()—返回當(dāng)前turtle是否可見 stamp()—復(fù)制當(dāng)前圖形
  • turtle.write(s[,font=(“fontname”,font_size,“font_type”)])—文本,s為文本內(nèi)容,font是字體的參數(shù),分別為字體名稱,大小和類型;font為可選項(xiàng),font參數(shù)也是可選項(xiàng)

二.具體實(shí)例

0.櫻花樹

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 / 3 )
    forward ( l )  # 畫樹枝
 
    if n > 0:
        b = random () * 15 + 10  # 右分支偏轉(zhuǎn)角度
        c = random () * 15 + 10  # 左分支偏轉(zhuǎn)角度
        d = l * (random () * 0.25 + 0.7)  # 下一個(gè)分支的長(zhǎng)度
        # 右轉(zhuǎn)一定角度,畫右分支
        right ( b )
        tree ( n - 1, d )
        # 左轉(zhuǎn)一定角度,畫左分支
        left ( b + c )
        tree ( n - 1, d )
        # 轉(zhuǎn)回來
        right ( c )
    else:
        # 畫葉子
        right ( 90 )
        n = cos ( radians ( heading () - 45 ) ) / 4 + 0.5
        ran = random ()
        # 這里相比于原來隨機(jī)添加了填充的圓圈,讓櫻花葉子看起來更多一點(diǎn)
        if (ran > 0.7):
            begin_fill ()
            circle ( 3 )
            fillcolor ( 'pink' )
        # 把原來隨機(jī)生成的葉子換成了統(tǒng)一的粉色
        pencolor ( "pink" )
        circle ( 3 )
        if (ran > 0.7):
            end_fill ()
        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.956, 0.9255, 0.9882 )  # 設(shè)置背景色(把灰色換成淡紫色)
ht ()  # 隱藏turtle
speed ( 0 )  # 速度 1-10漸進(jìn),0 最快
tracer ( 0, 0 )
pu ()  # 抬筆
backward ( 50 )
left ( 90 )  # 左轉(zhuǎn)90度
pu ()  # 抬筆
backward ( 300 )  # 后退300
tree ( 12, 100 )  # 遞歸7層
done ()

1.彩色螺旋線

from turtle import *
import turtle
t = Turtle()
t.pensize(2)
turtle.bgcolor("black")
colors = ["red", "yellow", 'purple', 'blue']
t._tracer(False)
for x in range(400):
    for y in range(200):
        t.forward(x * y)
        t.color(colors[x % 4])
        t.left(91)
t._tracer(True)
done()

?2.小蟒蛇 

import turtle
turtle.penup()
turtle.pencolor("blue")
turtle.forward(-200)
turtle.pendown()
turtle.pensize(10)
turtle.right(45)
for i in range(4):
    turtle.circle(40, 100)
    turtle.circle(-40, 60)
turtle.circle(40, 80 / 2)
turtle.fd(30)
turtle.circle(16, 150)
turtle.fd(100)
turtle.done()

?3.畫佩奇

 
import time
import turtle as t
 
t.pensize(4) # 設(shè)置畫筆的大小
t.colormode(255) # 設(shè)置GBK顏色范圍為0-255
t.color((255,155,192),"pink") # 設(shè)置畫筆顏色和填充顏色(pink)
t.setup(840,500) # 設(shè)置主窗口的大小為840*500
t.speed(10) # 設(shè)置畫筆速度為10
#鼻子
t.pu() # 提筆
t.goto(-100,100) # 畫筆前往F坐標(biāo)(-100,100)
t.pd() # 下筆
t.seth(-30) # 筆的角度為-30°
t.begin_fill() # 外形填充的開始標(biāo)志
a=0.4
for i in range(120):
    if 0 <= i < 30 or 60 <= i < 90:
        a=a+0.08
        t.lt(3) #向左轉(zhuǎn)3度
        t.fd(a) #向前走a的步長(zhǎng)
    else:
        a=a-0.08
        t.lt(3)
        t.fd(a)
t.end_fill() # 依據(jù)輪廓填充
t.pu() # 提筆
t.seth(90) # 筆的角度為90度
t.fd(25) # 向前移動(dòng)25
t.seth(0) # 轉(zhuǎn)換畫筆的角度為0
t.fd(10)
t.pd()
t.pencolor(255,155,192) # 設(shè)置畫筆顏色
t.seth(10)
t.begin_fill()
t.circle(5) # 畫一個(gè)半徑為5的圓
t.color(160,82,45) # 設(shè)置畫筆和填充顏色
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) # 順時(shí)針畫一個(gè)半徑為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) #向左轉(zhuǎn)3度
        t.fd(a) #向前走a的步長(zhǎng)
    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)

4.風(fēng)和日麗圖

# coding=utf-8
# code by me
 
# 引用海龜庫(kù)以及隨機(jī)庫(kù)
import turtle as t
import random
import time
 
light = t.Turtle(visible=False)
wind = t.Turtle(visible=False)
 
def canvas(size_x=1200, size_y=900):  # 設(shè)置畫布,有默認(rèn)值
    t.setup(size_x, size_y)
 
# 設(shè)置線的顏色以及size
def pencil(size=5, color="black"):
    t.pensize(size)
    t.pencolor(color)
 
def sun():  # 繪制太陽(yáng)
    light.pensize(5)
    light.pencolor("black")
    sec = int(time.time())
    t.penup()  # 畫紅色點(diǎn)
    t.goto(-530, 310)
    t.pendown()
    t.dot(100, "red")
    for i in range(1, 19):  # 陽(yáng)光效果
        light.penup()
        light.goto(-530, 310)
        light.seth(i * 20)
        light.forward(55)
        light.pendown()
        if (i + sec) % 2 == 1:
            light.forward(15)
        else:
            light.forward(7)
 
 
def plant():  # 繪制天空以及大地
    t.penup()  # 每個(gè)繪制函數(shù)開頭都寫了這個(gè),防止龜龜繪制另外的圖像移動(dòng)時(shí)留下痕跡
    length = 900 * 0.318  # 將畫布的縱向黃金分割
    t.home()
    t.goto(600, -450)
 
    t.fillcolor("#DAA520")  # 分割填充大地
    t.begin_fill()
    t.left(90)
    t.forward(length)
    t.left(90)
    t.forward(1200)
    t.left(90)
    t.forward(length)
    t.left(90)
    t.forward(1200)
    t.end_fill()
 
    t.home()  # 填充天空
    t.goto(600, length - 450)
    t.fillcolor("#B0C4DE")
    t.begin_fill()
    t.left(90)
    t.forward(900 - length)
    t.left(90)
    t.forward(1200)
    t.left(90)
    t.forward(900 - length)
    t.left(90)
    t.forward(1200)
    t.end_fill()
 
 
def butterfly(pos_x=0, pos_y=0):  # 繪制蝴蝶,這里會(huì)隨機(jī)生成位置以及蝴蝶大小、顏色
    light.penup()
    light.goto(pos_x, pos_y)
    light.pendown()
    light.pensize(2)
    light.seth(45)
 
    color = ["#FF00FF", "#87CEFA", "#0000EE", "#FF4500", "#00FF00", "#00E5EE", "#FFFAFA"]  # 一個(gè)顏色表,以及size表
    size = [6, 7, 8, 9, 10, 11, 12]
    tep_size = random.choice(size)
    light.fillcolor(random.choice(color))
    light.begin_fill()
    light.circle(tep_size, 270)  # 繪制翅膀
    light.right(135)
 
    light.pensize(3)
    light.forward(tep_size / 2)
    light.right(45)
    light.forward(tep_size / 2)
    light.back(tep_size / 2)
    light.left(70)
    light.forward(tep_size / 2)
    light.back(tep_size / 2)
    light.right(25)
    light.pensize(4)
    light.back(2.05 * tep_size)
 
    light.seth(-90)
    light.pensize(2)
    light.circle(tep_size, -180)
    light.pensize(4)
    light.left(90)
    light.forward(tep_size * 2)
    light.back(tep_size * 2.5)
    light.end_fill()
 
def botany(pos_x=0, pos_y=0, direction=0, flower=1, bend=10):  # 植物函數(shù),繪制向日葵,向日葵會(huì)迎風(fēng)倒,效果很到位
    light.pensize(3)
    light.pencolor("black")
    light.penup()
    light.goto(pos_x, pos_y)
    light.pendown()
    light.left(90)
    light.fillcolor("#00CD00")
    light.begin_fill()
 
    light.circle(50, 90)  # 繪制葉片
    light.left(90)
    light.circle(50, 90)
 
    light.penup()
    light.goto(pos_x, pos_y)
    light.pendown()
 
    light.seth(-90)
    light.pensize(6)
    light.forward(50)
    light.back(50)
 
    light.pensize(3)
    light.circle(50, -90)
    light.right(90)
    light.circle(50, -90)
    light.end_fill()
    if flower:  # 判斷是否有花,這里默認(rèn)有花
        light.penup()
        light.goto(pos_x, pos_y)
        light.pendown()
        light.pensize(4)
        if direction:
            light.seth(80)  # 繪制稈
            light.circle(130 - 5 * bend, 70 + 5 * bend, None)
        else:
            light.seth(-80)
            light.circle(130 - 5 * bend, -70 - 5 * bend, None)
            light.right(180)
        tep_x, tep_y = light.xcor(), light.ycor()
        light.forward(13)
        light.right(30)
        for i in range(6):  # 繪制花瓣
            light.fillcolor("#FFD700")
            light.begin_fill()
            light.circle(15, 300)
            light.left(120)
            light.end_fill()
        light.goto(tep_x, tep_y)
        light.dot(36, "#FFB90F")
 
def cloud(pos_x=0, pos_y=0, size=20):  # 繪制云
    pos = int(time.time())
    pos %= 50
    light.penup()  # 云沒有要邊框,所以沒有pendown
    light.goto(pos*8+pos_x, pos_y)
 
    light.fillcolor("#E6E6FA")
    light.begin_fill()
    light.seth(-80)
    light.circle(size, 110)
    for i in range(1, 6):  # 繪制下半部分
        light.right(100)
        light.circle(size, 110)
    light.left(120)
    for i in range(1, 7):  # 繪制上半部分,上邊進(jìn)行了六次循環(huán),但是之前就進(jìn)行了一次繪制,這里有七次循環(huán)
        light.right(100)
        light.circle(size, 110)
    light.end_fill()
 
# def draw(x, y):                               # 這里是之前調(diào)試用的拖拽函數(shù)響應(yīng)函數(shù),不需使用
#     t.goto(x, y)
#     print(t.xcor(), t.ycor())
 
 
# def person(pos_x=0, pos_y=0):                 # 繪制人的函數(shù),效果很拉跨,舍棄
#     t.penup()
#     t.goto(pos_x, pos_y)
#     t.pendown()
#
#     t.dot(44, "#FFDEAD")
#     t.right(90)
#     t.penup()
#     t.forward(25)
#     t.right(15)
#     t.pendown()
#     pencil(10)
#     t.forward(50)
#
#     t.right(35)
#     t.forward(50)
#     t.back(50)
#     t.left(90)
#     t.forward(27)
#     t.right(110)
#     t.forward(23)
#
#     t.penup()
#     t.goto(pos_x, pos_y)
#     t.seth(-90)
#     t.forward(25)
#     t.right(15)
#     t.forward(20)
#     t.right(60)
#     t.pendown()
#     t.forward(50)
#     tep_x1, tep_y1 = t.xcor(), t.ycor()
#     t.back(50)
#     t.right(160)
#     t.forward(30)
#     t.seth(90)
#     t.forward(20)
#
#     t.penup()
#     t.goto(tep_x1, tep_y1)
#     t.seth(-145)
#     pencil(6)
#     t.pendown()
#     t.forward(50)
#     t.right(90)
#     t.forward(20)
#     t.right(90)
#     t.forward(15)
#     t.right(90)
#     t.forward(20)
#     t.left(90)
#     t.forward(150)
 
def star(pos_x=0, pos_y=0, size=10):  # 繪制星星函數(shù)
    color = ["#FFFFE0", "#FFFF00"]
    light.penup()
    light.goto(pos_x, pos_y)
    angle = random.randint(0, 180)
    light.seth(angle)
    light.fillcolor(random.choice(color))
    light.begin_fill()
    for i in range(5):  # 這個(gè)144度是查的資料
        light.right(144)
        light.forward(size)
    light.end_fill()
 
 
def wind():  # 風(fēng)函數(shù),讓圖像看起來更有感覺,就是一條直線,加兩個(gè)圓
    pos = int(time.time())
    pos %= 5
    color = ["#D3D3D3", "#CDCDB4"]
    tep_color = random.choice(color)
    light.penup()
    light.goto(pos*80-1000, 50)
    light.seth(0)
    light.pendown()
    light.pensize(5)
    light.pencolor(tep_color)
    light.forward(500)
    light.pensize(4)
    light.pencolor(tep_color)
    light.left(45)
    light.circle(50, 180)
    light.pensize(3)
    light.pencolor(tep_color)
    light.circle(30, 90)
 
    tep_color = random.choice(color)
    light.penup()  # 畫圈圈
    light.goto(pos*140-1040, 80)
    light.seth(0)
    light.pendown()
    light.pensize(5)
    light.pencolor(tep_color)
    light.forward(400)
    light.pensize(4)
    light.pencolor(tep_color)
    light.left(45)
    light.circle(40, 180)
    light.pensize(3)
    light.pencolor(tep_color)
    light.circle(25, 90)
 
 
def lie():  # 這個(gè)函數(shù)是表達(dá)我對(duì)python的喜愛
    t.penup()
    t.goto(0, -360)
    pencil(0, "#FFA54F")
    t.write("節(jié)日快樂", align='center', font=('arial', 75, 'normal'))
    t.hideturtle()
 
 
def dynamic():
    light.clear()
    sun()
    star(200, 200)  # 右上角有星星注意觀察 0.0
    star(260, 230, 15)
    star(180, 300)
    star(300, 100, 15)
    star(500, 290)
    star(420, 310, 15)
    star(300, 200)
    star(260, 230, 15)
    star(350, 352)
    star(500, 180, 15)
    star(560, 352)
    cloud(-530, 280, 20)
    cloud(300, 250, 30)
    wind()
 
    bend = int(time.time())
    bend %= 5
    bend += 14
    light.seth(-100-bend)  # 初始向日葵葉片角度
    for i in range(14):  # 生成向日葵
 
        if i % 2 == 0:
            botany(-520 + i * 50, -132, 0, 1, bend - i)
            botany(-340 + i * 50, -132, 0, 1, bend - i)
        else:
            botany(-430 + i * 50, -142, 0, 1, bend - i)
            botany(-230 + i * 50, -142, 0, 1, bend - i)
    pos_x = [45, -96, -100, 410, 300, 580, 230, -50, -400, -320, -212]
    pos_y = [45, -96, -100, 0, 20, 30, 29, -50, -20, -43, 10]
    for i in range(6):  # 生成蝴蝶,這里便于觀察到結(jié)果,蝴蝶有點(diǎn)大
        butterfly(random.choice(pos_x), random.choice(pos_y))
    t.ontimer(dynamic, 1000)
 
def piant():  # 這里是將繪制全放在這個(gè)函數(shù)里,讓main看起來簡(jiǎn)潔
    t.tracer(False)
    t.delay(0)
    canvas()
    pencil()
    plant()
    lie()
    dynamic()
 
 
if __name__ == "__main__":
    piant()
    # t.ondrag(draw, btn=1, add=None)
    t.mainloop()
 

總結(jié)

到此這篇關(guān)于Python海龜turtle基礎(chǔ)知識(shí)大全以及畫圖集合的文章就介紹到這了,更多相關(guān)Python海龜turtle繪圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何更改jupyter的默認(rèn)文件路徑

    如何更改jupyter的默認(rèn)文件路徑

    這篇文章主要介紹了如何更改jupyter的默認(rèn)文件路徑問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 查看端口并殺進(jìn)程python腳本代碼

    查看端口并殺進(jìn)程python腳本代碼

    今天小編就為大家分享一篇查看端口并殺進(jìn)程python腳本代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python 打印出所有的對(duì)象/模塊的屬性(實(shí)例代碼)

    python 打印出所有的對(duì)象/模塊的屬性(實(shí)例代碼)

    下面小編就為大家?guī)硪黄猵ython 打印出所有的對(duì)象/模塊的屬性(實(shí)例代碼)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09
  • 使用selenium模擬登錄解決滑塊驗(yàn)證問題的實(shí)現(xiàn)

    使用selenium模擬登錄解決滑塊驗(yàn)證問題的實(shí)現(xiàn)

    這篇文章主要介紹了使用selenium模擬登錄解決滑塊驗(yàn)證問題的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • python實(shí)現(xiàn)學(xué)生管理系統(tǒng)源碼

    python實(shí)現(xiàn)學(xué)生管理系統(tǒng)源碼

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)學(xué)生管理系統(tǒng)源碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Python實(shí)現(xiàn)以時(shí)間換空間的緩存替換算法

    Python實(shí)現(xiàn)以時(shí)間換空間的緩存替換算法

    緩存是指可以進(jìn)行高速數(shù)據(jù)交換的存儲(chǔ)器,它先于內(nèi)存與CPU交換數(shù)據(jù),因此速度很快。緩存就是把一些數(shù)據(jù)暫時(shí)存放于某些地方,可能是內(nèi)存,也有可能硬盤。下面給大家介紹Python實(shí)現(xiàn)以時(shí)間換空間的緩存替換算法,需要的朋友參考下
    2016-02-02
  • Python 數(shù)據(jù)可視化之Seaborn詳解

    Python 數(shù)據(jù)可視化之Seaborn詳解

    這篇文章主要介紹了Python數(shù)據(jù)可視化庫(kù)seaborn的使用總結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2021-11-11
  • python 類對(duì)象和實(shí)例對(duì)象動(dòng)態(tài)添加方法(分享)

    python 類對(duì)象和實(shí)例對(duì)象動(dòng)態(tài)添加方法(分享)

    下面小編就為大家分享一篇python 類對(duì)象和實(shí)例對(duì)象動(dòng)態(tài)添加方法。具有很的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Python+Opencv實(shí)現(xiàn)表格邊框線檢測(cè)

    Python+Opencv實(shí)現(xiàn)表格邊框線檢測(cè)

    Python數(shù)據(jù)開發(fā)工作時(shí)偶爾會(huì)要求對(duì)圖片做邊框線檢查和圖片中的直線,本文為大家整理了相關(guān)的實(shí)現(xiàn)方法,非常實(shí)用,建議有需要的小伙伴收藏一下
    2023-05-05
  • Python基于pygame實(shí)現(xiàn)圖片代替鼠標(biāo)移動(dòng)效果

    Python基于pygame實(shí)現(xiàn)圖片代替鼠標(biāo)移動(dòng)效果

    這篇文章主要介紹了Python基于pygame實(shí)現(xiàn)圖片代替鼠標(biāo)移動(dòng)效果,可實(shí)現(xiàn)將鼠標(biāo)箭頭轉(zhuǎn)換成圖形的功能,涉及pygame圖形操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11

最新評(píng)論