推广 热搜: 百度  优化  服务  广告  排名  生活服务    账号  设备   

【手机版】在手机上用Python画圣诞树~(附源代码)python手机版「【手机版】在手机上用Python画圣诞树~(附源代码)」

   日期:2025-04-14     作者:035ce    caijiyuan  
核心提示:import turtle as tfrom turtle import *import random as rimport time n = 100.0t.pensize(10) # 修改画笔大小speed(fastest)#

import turtle as t

from turtle import *

import random as r

import time

n = 100.0

t.pensize(10) # 修改画笔大小

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:

linewidth = 5

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()

# Language:Python

# 复制完整代码,打开爱编程APP即可运行。

本文地址:http://sjzytwl.xhstdz.com/xwnews/1240.html    物流园资讯网 http://sjzytwl.xhstdz.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类生活信息

文章列表
相关文章
最新动态
推荐图文
生活信息
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号