聖誕節快到了,用python、turtle畫棵聖誕樹吧

首先需要安裝python環境,如果是新手建議百度一下,有很詳細的教程哦,根據電腦的情況去下載對應的python安裝包,使用的是python3。7。0的版本,除此之外還有python2 ,和python3是有區別的,但是本人對python2的瞭解不夠深。

安裝完環境後,建議大家安裝一個python編譯器,使用的是pycharm,免費版本的,網上也都有安裝教程,挺簡單的,而且官方出了漢化外掛,可以在file-setting中搜索安裝。

編譯器也安裝完畢後,請開啟pycharm,然後我們建立一個project,在project下建立一個python file,建議取名字不要使用中文,建立成功後把程式碼複製過去,然後在該頁面右鍵-執行(run),按理就可以跑了。

程式碼如下:

import turtle as t #as就是取個別名,後續呼叫的t都是turtle

from turtle import *

import random as r

import time

n = 100。0

speed(“fastest”) #定義速度

screensize(bg=‘black’) #定義背景顏色,可以自己換顏色

left(90)

forward(3*n)

color(“orange”, “yellow”)#定義最上端星星的顏色,外圈是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)

def drawlight():#定義畫彩燈的方法

if r。randint(0, 30) == 0:#如果覺得彩燈太多,可以把取值範圍加大一些,對應的燈就會少一些

color(‘tomato’)#定義第一種顏色

circle(6)#定義彩燈大小

elif r。randint(0,30) == 1:

color(‘orange’)#定義第二種顏色

circle(3)#定義彩燈大小

else:

color(‘dark green’)#其餘的隨機數情況下畫空的樹枝

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)

drawlight()#同時呼叫小彩燈的方法

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 * r。random()

b = 10 - 20 * r。random()

up()

forward(b)

left(90)

forward(a)

down()

if r。randint(0, 1) == 0:

color(‘tomato’)

else:

color(‘wheat’)

circle(2)

up()

backward(a)

right(90)

backward(b)

t。color(“dark red”,“red”)#定義字型顏色

t。write(“Merry Christmas”,align =“center”,font=(“Comic Sans MS”,40,“bold”))#定義文字、位置、字型、大小

def drawsnow():#定義畫雪花的方法

t。ht() #隱藏筆頭,ht=hideturtle

t。pensize(2) #定義筆頭大小

for i in range(200): #畫多少雪花

t。pencolor(“white”) #定義畫筆顏色為白色,其實就是雪花為白色

t。pu() #提筆,pu=penup

t。setx(r。randint(-350,350)) #定義x座標,隨機從-350到350之間選擇

t。sety(r。randint(-100,350)) #定義y座標,注意雪花一般在地上不會落下,所以不會從太小的縱座軸開始

t。pd() #落筆,pd=pendown

dens = 6 #雪花瓣數設為6

snowsize = r。randint(1,10) #定義雪花大小

for j in range(dens): #就是6,那就是畫5次,也就是一個雪花五角星

#t。forward(int(snowsize)) #int()取整數

t。fd(int(snowsize))

t。backward(int(snowsize))

#t。bd(int(snowsize)) #注意沒有bd=backward,但有fd=forward,小bug

t。right(int(360/dens)) #轉動角度

drawsnow()#呼叫畫雪花的方法

t。done() # 完成,否則會直接關閉

聖誕節快到了,用python、turtle畫棵聖誕樹吧

轉載:CSDN博主「Ding2langdang」https://blog。csdn。net/Ding2langdang/article/details/121491593