前言
嗨,彥祖們,不會過圣誕了還是一個人吧?今天我們來講一下如何用python來畫一個圣誕樹,學會就快給那個她發過去吧,我的朋友圈已經讓圣誕樹刷屏了!這不就來給各位彥祖們教了,看完記得給個三連哦!




當然都是好看的,但是碼神莫,就是要搞點不一樣的用,python來畫一個!或者搞個前端來畫!
開始教學
這次我們用的是python中的turtle(海龜)庫,是python中的一個內置庫不需要額外安裝
- 創建視窗
- 設定畫筆
- 繪制圖形
創建
setup()函式,其中的引數為width,height,startx=None,starty=None,分別表示視窗寬,高,及,視窗在電腦螢屏上的橫坐標和縱坐標,
turtle.setup(800,600)

設定畫筆
三個屬性函式
pensize(<width>) #粗細
speed(speed) #運動速度
color(color) #設定畫筆顏色
繪制影像
這就要提到海龜的坐標體系了,以視窗中心為原點,以右為正方向,上方為y軸正方向,
移動
- forward(distance) #向前移動
- backward(distance) #向后移動
- goto(x,y=None)# 移動到相應的位置
角度控制
和上面的移動大同小異,都是3項控制
4. right(degree)#向右轉動
5. left(degree)#向左轉動
6. seth(degree)#轉動到某個方向
圖形繪制,影像填充
這個今天用不到,也就不說了,歡迎愛好的彥祖們,評論區見!
正片開始
from turtle import *
import random #隨機,用來搞小圓點
import time
n = 100.0
speed("fastest") #速度快
screensize(bg='seashell')
left(90)
forward(3 * n)
color("orange", "yellow")
begin_fill()
left(126)
for i in range(5):
forward(n / 5)
right(144)
forward(n / 5)
left(72)
end_fill()
right(126)
color("dark green")
backward(n * 4.8)
def tree(d, s):
if d <= 0: return
forward(s)
tree(d - 1, s * .8)
right(120)
tree(d - 3, s * .5)
right(120)
tree(d - 3, s * .5)
right(120)
backward(s)
tree(15, n)
backward(n / 2)
for i in range(200):
a = 200 - 400 * random.random()
b = 10 - 20 * random.random()
up()
forward(b)
left(90)
forward(a)
down()
if random.randint(0, 1) == 0:
color('tomato')
else:
color('wheat')
circle(2)
up()
backward(a)
right(90)
backward(b)
time.sleep(60) #行程推遲時間

最后
本文純屬標題黨,如有雷同,必然不是碼神,哈哈哈
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/382892.html
標籤:python
下一篇:python畫圣誕樹【全網最全】
