"""
繪製小豬佩奇
"""from turtle import *
def nose(x,y):
"""畫鼻子"""
# penup()提起畫筆,用於另起乙個地方繪製時用,與pendown()配對使用
penup()
# 將海龜移動到指定的座標
goto(x,y)
pendown()
# 設定海龜的方向(0-東、90-北、180-西、270-南)
# setheading(angle)設定當前朝向為angle角度
setheading(-30)
# begin_fill()填充圖形前,呼叫該方法
begin_fill()
a = 0.4
for i in range(120):
if 0 <= i < 30 or 60 <= i <90:
a = a + 0.08
# 向左轉3度
left(3)
# 向前走
forward(a)
else:
a = a - 0.08
left(3)
forward(a)
end_fill()
penup()
setheading(90)
forward(25)
setheading(0)
forward(10)
pendown()
# 設定畫筆的顏色(紅, 綠, 藍)
pencolor(255, 155, 192)
setheading(10)
begin_fill()
circle(5)
color(160, 82, 45)
end_fill()
penup()
setheading(0)
forward(20)
pendown()
pencolor(255, 155, 192)
setheading(10)
begin_fill()
circle(5)
color(160, 82, 45)
end_fill()
def head(x, y):
"""畫頭"""
color((255, 155, 192), "pink")
penup()
goto(x,y)
setheading(0)
pendown()
begin_fill()
setheading(180)
circle(300, -30)
circle(100, -60)
circle(80, -100)
circle(150, -20)
circle(60, -95)
setheading(161)
circle(-300, 15)
penup()
goto(-100, 100)
pendown()
setheading(-30)
a = 0.4
for i in range(60):
if 0<= i < 30 or 60 <= i < 90:
a = a + 0.08
lt(3) #向左轉3度
fd(a) #向前走a的步長
else:
a = a - 0.08
lt(3)
fd(a)
end_fill()
def ears(x,y):
"""畫耳朵"""
color((255, 155, 192), "pink")
penup()
goto(x, y)
pendown()
begin_fill()
setheading(100)
circle(-50, 50)
circle(-10, 120)
circle(-50, 54)
end_fill()
penup()
setheading(90)
forward(-12)
setheading(0)
forward(30)
pendown()
begin_fill()
setheading(100)
circle(-50, 50)
circle(-10, 120)
circle(-50, 56)
end_fill()
def eyes(x,y):
"""畫眼睛"""
color((255, 155, 192), "white")
penup()
setheading(90)
forward(-20)
setheading(0)
forward(-95)
pendown()
begin_fill()
circle(15)
end_fill()
color("black")
penup()
setheading(90)
forward(12)
setheading(0)
forward(-3)
pendown()
begin_fill()
circle(3)
end_fill()
color((255, 155, 192), "white")
penup()
seth(90)
forward(-25)
seth(0)
forward(40)
pendown()
begin_fill()
circle(15)
end_fill()
color("black")
penup()
setheading(90)
forward(12)
setheading(0)
forward(-3)
pendown()
begin_fill()
circle(3)
end_fill()
def cheek(x,y):
"""畫臉頰"""
color((255, 155, 192))
penup()
goto(x,y)
pendown()
setheading(0)
begin_fill()
circle(30)
end_fill()
def mouth(x,y):
"""畫嘴巴"""
color(239, 69, 19)
penup()
goto(x, y)
pendown()
setheading(-80)
circle(30, 40)
circle(40, 80)
def setting():
"""設定引數"""
pensize(4)
# 隱藏海龜
hideturtle()
colormode(255)
color((255, 155, 192), "pink")
setup(840, 500)
speed(10)
def main():
"""主函式"""
setting()
nose(-100, 100)
head(-69, 167)
ears(0, 160)
eyes(0, 140)
cheek(80, 10)
mouth(-20, 30)
done()
if __name__ == '__main__':
main()
執行該py檔案
使用Python的turtle模組畫國旗
python的turtle模組畫國旗主要用到兩個函式 draw rentangle和draw star。至於函式的呼叫就和我們學的c,c 是一樣的。對於turtle畫國旗的程式中,首先是查詢國旗的畫法,才能用程式實現。自己在實現的過程中主要是對turtle.circle 沒有準確掌握,所以花了一些不...
python之turtle畫蚊香
原理 利用turtle繪製圓形,並使圓半徑逐步增加 如下 import turtle turtle.pensize 30 for i in range 30 turtle.circle i 10,60 turtle.done 下面對 解釋 1 import turtle 匯入turtle庫,turt...
使用Python的內建turtle庫畫彩虹
上圖是使用turtle庫繪製的彩虹。程式的關鍵點是將畫筆的顏色漸變,再通過不斷微小的角度轉換繪製成彩虹 計算機中的顏色空間模型是典型的rgb模型,r,g,b分別對應光的三原色,色相是由rgb三個引數共同決定的。那麼如果想通過乙個引數來改變色相,應該使用hsv顏色模型。hsv對於顏色空間的描述更貼近人...