随着国外文化的输出,大家开始对圣诞节也充满了期待,通过代码为朋友绘制一款专属的圣诞树成为了浪漫的表达方式,那么有哪些可以复制的圣诞树代码呢?接下来本站小编就给大家整理了2022年python圣诞树可复制代码大全分享,有需要的小伙伴一起看看吧。
一、唯美圣诞树
import turtle as tfrom turtle import *import random as rimport timen = 100.0speed("fastest")screensize(bg="black")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()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"))#写字python学习交流Q群:261823976 ### 源码领取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,**ug t.right(int(360/dens)) #转动角度drawsnow()#画雪花t.done() # 完成,否则会直接关闭
二、礼物圣诞树
setup(500, 500, startx=None, starty=None) speed(0)pencolor("red")pensize(10)penup()hideturtle()goto(0, 150)showturtle()pendown()shape(name="classic")# 1seth(-120)for i in range(10): fd(12) right(2)penup()goto(0, 150)seth(-60)pendown()for i in range(10): fd(12) left(2)seth(-150)penup()fd(10)pendown()for i in range(5): fd(10) right(15)seth(-150)penup()fd(8)pendown()for i in range(5): fd(10) right(15)seth(-155)penup()fd(5)pendown()for i in range(5): fd(7) right(15)# 2penup()goto(-55, 34)pendown()seth(-120)for i in range(10): fd(8) right(5)penup()goto(50, 35)seth(-60)pendown()for i in range(10): fd(8) left(5)seth(-120)penup()fd(10)seth(-145)pendown()for i in range(5): fd(10) right(15)penup()fd(10)seth(-145)pendown()for i in range(5): fd(12) right(15)penup()fd(8)seth(-145)pendown()for i in range(5): fd(10) right(15)penup()seth(-155)fd(8)pendown()for i in range(5): fd(11) right(15)# 3penup()goto(-100, -40)seth(-120)pendown()for i in range(10): fd(6) right(3)penup()goto(80, -39)seth(-50)pendown()for i in range(10): fd(6) left(3)seth(-155)penup()fd(10)pendown()for i in range(5): fd(8) right(10)penup()fd(8)seth(-145)pendown()for i in range(7): fd(8) right(10)penup()fd(8)seth(-145)pendown()for i in range(7): fd(7) right(10)penup()fd(8)seth(-145)pendown()for i in range(7): fd(7) right(10)penup()fd(8)seth(-140)pendown()for i in range(7): fd(6) right(10)# 4penup()goto(-120, -95)seth(-130)pendown()for i in range(7): fd(10) right(5)penup()goto(100, -95)seth(-50)pendown()for i in range(7): fd(10) left(5)penup()seth(-120)fd(10)seth(-155)pendown()for i in range(6): fd(8) right(10)penup()seth(-160)fd(10)seth(-155)pendown()for i in range(6): fd(8) right(10)penup()seth(-160)fd(10)seth(-155)pendown()for i in range(6): fd(8) right(10)penup()seth(-160)fd(10)seth(-160)pendown()for i in range(6): fd(8) right(10)penup()seth(-160)fd(10)seth(-160)pendown()for i in range(6): fd(8) right(10)penup()seth(-160)fd(10)seth(-165)pendown()for i in range(5): fd(10) right(11)# 5penup()goto(-70, -165)seth(-85)pendown()for i in range(3): fd(5) left(3)penup()goto(70, -165)seth(-95)pendown()for i in range(3): fd(5) right(3)seth(-170)penup()fd(10)pendown()pendown()for i in range(10): fd(12) right(2)# 6penup()goto(70, -165)pendown()seth(-90)pensize(8)pencolor("#de8891")circle(-20, 90)penup()goto(30, -185)pendown()seth(-180)pensize(8)pencolor("#de8891")fd(40)penup()goto(-5, -170)pendown()seth(-180)pensize(8)pencolor("#de8891")fd(35)def guest(x, y, z): penup() goto(x, y) seth(-z) pendown() for angel in range(5): fd(10) right(10)def guet(x, y, z): penup() goto(x, y) seth(-z) pendown() for angel in range(5): fd(10) left(10)
树枝
python学习交流Q群:261823976 ### 源码领取guest(-70, -150, 160)guest(100, -150, 160)guet(110, -110, 50)guest(160, -140, 150)qu(80, -120, 180)guest(70, -85, 165)guest(-40, -85, 165)guet(90, -50, 50)guest(130, -80, 150)pencolor("pink")qu(-40, -60, 180)pencolor("#de8891")qu(80, -30, 180)pencolor("pink")qu(40, 10, 180)pencolor("#de8891")guest(-60, 30, 120)guest(-20, -20, 150)guet(45, 40, 60)guest(-30, 40, 170)guest(-30, 110, 115)guet(40, 90, 60)guest(80, 50, 160)pencolor("#de8891")def hdj(x, y): penup() goto(x, y) seth(80) pendown() pensize(2) circle(5) seth(10) fd(15) seth(120) fd(20) seth(240) fd(20) seth(180) fd(20) seth(-60) fd(20) seth(50) fd(20) seth(-40) fd(30) seth(-130) fd(5) seth(135) fd(30) seth(-60) fd(30) seth(-150) fd(6) seth(110) fd(30)def uit(x, y): penup() goto(x, y) pendown() pensize(2) circle(5) seth(-10) fd(15) seth(90) fd(15) seth(200) fd(15) seth(160) fd(15) seth(-90) fd(15) seth(10) fd(15) seth(-60) fd(20) seth(-180) fd(5) seth(110) fd(20) seth(-90) fd(20) seth(-180) fd(6) seth(70) fd(15) hideturtle()def yut(x, y, z): penup() goto(x, y) pendown() seth(z) for po in range(5): fd(4) left(36)def ytu(x, y, z): penup() goto(x, y) pendown() seth(z) for kk in range(5): fd(4) left(36)
小蝴蝶结
seth(0)uit(40, -160)hdj(-80, -120)yut(-67, -115, 120)yut(-86, -123, 150)hdj(40, -50)yut(52, -45, 130)yut(34, -55, 160)seth(0)uit(-20, -60)ytu(-4, -60, 100)ytu(-20, -60, 120)hdj(-30, 20)yut(-15, 25, 130)yut(-40, 20, 180)uit(30, 70)ytu(45, 70, 100)ytu(30, 70, 120)pencolor("#f799e6")pensize(5)penup()seth(0)goto(0, 150)pendown()circle(10)seth(-15)fd(40)seth(90)fd(40)seth(200)fd(40)seth(160)fd(40)seth(-90)fd(40)seth(15)fd(40)seth(-70)pencolor("#f799e6")pensize(4)fd(40)seth(-180)fd(10)seth(100)fd(40)seth(-100)fd(40)seth(-180)fd(10)seth(70)fd(40)penup()seth(0)goto(0, 130)pencolor("pink")pendown()def iou(x, y, z): penup() goto(x, y) pencolor("#f799e6") pendown() seth(z) for po in range(10): fd(4) left(18)seth(0)iou(35, 145, 100)iou(-7, 145, 110)pencolor("red")pensize(7)penup()goto(-35, 135)pendown()
圣诞帽
seth(-20)pensize(2)penup()goto(-30, -120)pencolor("black")pendown()fillcolor("red")fd(30)circle(4, 180)fd(30)circle(4, 180)penup()goto(-25, -115)seth(75)pendown()begin_fill()for i in range(5): fd(6) right(20)seth(-10)for i in range(5): fd(8) right(15)seth(145)for i in range(5): fd(5) left(2)seth(90)for i in range(5): fd(1) left(2)seth(-90)for i in range(4): fd(4) right(6)seth(161)fd(30)end_fill()pensize(1)pencolor("black")def koc(x, y, size): pensize(2) pencolor("black") penup() goto(x, y) pendown() begin_fill() fillcolor("yellow") for i in range(5): left(72) fd(size) right(144) fd(size) end_fill()
星星
seth(-15)koc(-120, -70, 10)seth(10)koc(100, -20, 10)seth(-10)koc(10, 40, 10)seth(30)koc(-80, 60, 10)koc(100, -150, 10)koc(-140, -150, 10)koc(20, 120, 10)
袜子
python学习交流Q群:261823976 ### 源码领取seth(-20)pensize(2)penup()goto(-20, 80)pencolor("black")pendown()fillcolor("red")fd(25)circle(4, 180)fd(25)circle(4, 180)penup()goto(-15, 80)pendown()begin_fill()fillcolor("red")seth(-120)fd(20)seth(150)fd(5)circle(7, 180)fd(15)circle(5, 90)fd(30)seth(160)fd(18)end_fill()penup()seth(0)goto(100, -230)pendown()write("我可爱成这样,做你圣诞礼物好不好", align="right", font=("方正黄草简体", 24, "bold"))done()
三、爱心圣诞树
# -*- coding: utf-8 -*-"""Created on Sat Dec 12 12:29:09 2020@author: haoyu"""import turtle as timport random
爱心函数
将爱心分为两个半圆与一个正方形
r为半圆半径,l = 2r为正方形边长
调整半径即可调整爱心大小
def loving_heart(r): l = 2 * r t.left(45) t.forward(l) t.circle(r, 180) t.right(90) t.circle(r, 180) t.forward(l)
树函数(递归)
python学习交流Q群:261823976 ### 源码领取def tree(d, s): if d <= 0: return t.forward(s) tree(d - 1, s * .8) t.right(120) tree(d - 3, s * .5) t.right(120) tree(d - 3, s * .5) t.right(120) t.backward(s) #回退函数
画爱心部分
t.penup()t.goto(0,200) #设置起点位置t.pendown()t.pencolor("pink") #设置画笔颜色t.color("pink") t.begin_fill() #对图形进行填充loving_heart(20) #执行画爱心函数t.end_fill()
画树部分
n = 100t.speed("fastest")#t.Turtle().screen.delay(0)t.right(225)t.color("dark green")t.backward(n * 4.8)tree(15, n)t.backward(n / 5)
绘制落叶
for i in range(200): a = 200 - 400 * random.random() b = 10 - 20 * random.random() t.up() t.forward(b) t.left(90) t.forward(a) t.down() if random.randint(0, 1) == 0: t.color("tomato") else: t.color("wheat") t.circle(2) t.up() t.backward(a) t.right(90) t.backward(b)
以上就是本站小编给大家带来的关于2022年python圣诞树可复制代码大全分享全部内容,更多精彩内容请关注本站网,小编将持续更新更多相关攻略。