今天是三月七號,也就是女生節,或者女神節。不知道你是否是有本身喜歡的女孩子,在這裏你能夠用turtle庫繪製一朵玫瑰花,送給你喜歡的姑娘。(拉到最後有驚喜哦)但在畫這朵玫瑰花以前,先來一個基礎的圖形,也能夠說是學習turtle庫的入門繪畫圖形——蟒蛇圖形。python
1、python蟒蛇繪製ide
代碼:函數
1 import turtle 2 turtle.setup(650, 350, 200, 200) 3 turtle.penup() 4 turtle.fd(-250) 5 turtle.pendown() 6 turtle.pensize(25) 7 turtle.pencolor("purple") 8 turtle.seth(-40) 9 for i in range(4): 10 turtle.circle(40, 80) 11 turtle.circle(-40, 80) 12 turtle.circle(40, 80/2) 13 turtle.fd(40) 14 turtle.circle(16, 180) 15 turtle.fd(40 * 2/3) 16 turtle.done()
展現圖:學習
2、turtle庫的相關知識spa
1.turtle庫又叫海龜庫。code
意思是畫圖就像海龜在畫布上行走同樣,海龜走過的軌跡造成了一幅圖畫。turtle庫是python的標準庫之一,是一個圖形繪製函數庫。blog
2.保留字import。ci
庫引用函數。import引用庫有兩種方式:字符串
第一種:import <庫名> 使用庫中函數的格式:<庫名>.<函數名>(<函數參數>)string
第二種:from <庫名> import <函數名> 或from <庫名> import *#其中,*是通配符,表示全部函數。使用格式:<函數名>.(<函數參數>)
另外一種用法:
import <庫名> as <庫別名>
<庫別名>.<函數名>(<函數參數>)
3.turtle庫函數介紹:
(1)turtle.setup(width, height, startx, starty)
做用:設置主窗體的大小和位置
參數:width:窗口寬度。height: 窗口高度。startx: 窗口左側與屏幕左側的像素距離。若是值是None,窗口位於屏幕水平中央。starty: 窗口頂部與屏幕頂部的像素距離。若是值是None,窗口位於屏幕垂直中央。
(2)turtle.penup()和turtle.pendown()
做用:擡起畫筆,以後畫筆移動不繪製圖形。和,落下畫筆。開始繪製圖形。
(3)turtle.pensize(width) 別名:turtle.width()
做用:設置畫筆寬帶。若是爲None或空,返回當前畫筆寬度。
(4)turtle.penclor(colorstring) 別名:turtle.pencolor((r, g, b))
做用:設置畫筆顏色,爲空則返回當前畫筆顏色。
參數:colorstring:表示顏色的字符串,例如,"purple", "red", "blue"等。(r, g, b):顏色對應的RGB數值,例如,(51, 204, 140)。下面是部分典型RGB顏色對照表。
(5)turtle.fd(distance) 別名:turtle.forward(distance)
做用:向箭頭的方向前進
參數:distance:行進的距離,當值爲負數時,表示向相反方向前進。
(6)turtle.seth(to_angle) 別名:turtle.setheading(to_angle)
做用:設置前進的角度,該角度時絕方向的角度值。
參數:to_angle:角度的整數值。
(7)turtle.circle(radius, extent=None)
做用:根據半徑radius繪製角度extent的弧形
參數:radius:弧形半徑,當值爲正數時,半徑在前進方向的左側,反之,在右側。extent:繪製弧形的角度,參數爲None,則繪製整個圓形。
4.循環語句: for,in 和 range() 函數
(1)for <變量> in range(<次數>):
<被循環執行的語句>
1 for i in range(5): 2 print(i)
(2)range函數:產生循環計數序列。
range(N):產生0到N-1的整數序列,共N個。range(5)#0 1 2 3 4
range(M, N):產生M到N-1的整數序列,共N-M個。range(2, 5)#2 3 4
3、玫瑰花的繪製
代碼:
1 import turtle 2 # 設置初始位置 3 turtle.goto(0, 0) 4 turtle.color("black") 5 turtle.penup() 6 turtle.left(90) 7 turtle.fd(200) 8 turtle.pendown() 9 turtle.right(90) 10 # 花蕊 11 turtle.fillcolor("red") 12 turtle.begin_fill() 13 turtle.circle(10, 180) 14 turtle.circle(25, 110) 15 turtle.left(50) 16 turtle.circle(60, 45) 17 turtle.circle(20, 170) 18 turtle.right(24) 19 turtle.fd(30) 20 turtle.left(10) 21 turtle.circle(30, 110) 22 turtle.fd(20) 23 turtle.left(40) 24 turtle.circle(90, 70) 25 turtle.circle(30, 150) 26 turtle.right(30) 27 turtle.fd(15) 28 turtle.circle(80, 90) 29 turtle.left(15) 30 turtle.fd(45) 31 turtle.right(165) 32 turtle.fd(20) 33 turtle.left(155) 34 turtle.circle(150, 80) 35 turtle.left(50) 36 turtle.circle(150, 90) 37 turtle.end_fill() 38 # 花瓣1 39 turtle.left(150) 40 turtle.circle(-90, 70) 41 turtle.left(20) 42 turtle.circle(75, 105) 43 turtle.setheading(60) 44 turtle.circle(80, 98) 45 turtle.circle(-90, 40) 46 # 花瓣2 47 turtle.left(180) 48 turtle.circle(90, 40) 49 turtle.circle(-80, 98) 50 turtle.setheading(-83) 51 # 葉子1 52 turtle.fd(30) 53 turtle.left(90) 54 turtle.fd(25) 55 turtle.left(45) 56 turtle.fillcolor("green") 57 turtle.begin_fill() 58 turtle.circle(-80, 90) 59 turtle.right(90) 60 turtle.circle(-80, 90) 61 turtle.end_fill() 62 turtle.right(135) 63 turtle.fd(60) 64 turtle.left(180) 65 turtle.fd(85) 66 turtle.left(90) 67 turtle.fd(80) 68 # 葉子2 69 turtle.right(90) 70 turtle.right(45) 71 turtle.fillcolor("green") 72 turtle.begin_fill() 73 turtle.circle(80, 90) 74 turtle.left(90) 75 turtle.circle(80, 90) 76 turtle.end_fill() 77 turtle.left(135) 78 turtle.fd(60) 79 turtle.left(180) 80 turtle.fd(60) 81 turtle.right(90) 82 turtle.circle(200, 60) 83 turtle.penup()
展現圖: