用python画六瓣雪花_python-turtle-画雪花-2种方法及效果的详解

#python3.8#xuguojun#2020.1.30#导出模块,这样导出比代码较简洁,但是注意r和后面RGB的r,所以我改为d代替R(r)

importturtle as timportrandom as r#绘制雪花

s=30 #定义30个

defsnow(s):

t.ht()#ht=hideturtle,隐藏画笔和轨迹

t.speed(500) #设置画笔的速度,快

t.pensize(2) #设置笔头大小

for i inrange(s):

d= r.random() #随机定义颜色

g =r.random()

b=r.random()

t.pencolor(d, g, b)#随机颜色定义,画笔的颜色,注意这里本来是rgb,但是r定义过random,所以用d代替

t.pu() #pu=penup,提笔

t.goto(r.randint(-350, 350), r.randint(1, 270)) #坐标和x和y值随机取值及范围

t.pd() #pd=pendown,落笔

dens = r.randint(8, 12) #随机定义雪花的花瓣数

snowsize = r.randint(10, 14) #随机定义雪花的大小

for _ inrange(dens):

t.forward(snowsize)#向当前画笔方向移动snowsize像素长度

t.backward(snowsize) #向当前画笔相反方向移动snowsize像素长度

t.right(360 / dens) #顺时针移动360 / dens度

#绘制地面线

g=50 #定义50条

defground(g):

t.ht()#ht=hideturtle,隐藏画笔和轨迹

t.speed(500) #画笔的速度

for i inrange(g):

t.pensize(r.randint(5, 10)) #随机画笔大小,从5~10选

x = r.randint(-400, 350) #x坐标轴的随机从-400到350选

y = r.randint(-280, -1)

d= -y / 280 #注意这里的r要该d

g = -y / 280 #定义随机数dgb,与y随机数挂钩

b = -y / 280t.pencolor(d, g, b)#定义颜色,r改为d,因为r在模块导出时定义random的

t.penup() #pu=penup,提笔

t.goto(x, y) #让画笔移动到此位置

t.pendown() #pd=pendown,落笔

t.forward(r.randint(40, 100)) #眼当前画笔方向向前移动40~100距离,fd=forward

#-----熟悉以下2中方法,启动画画------#方法一:主函数法

defmain():

t.setup(800, 600, 500, 0) #窗口大小和位置,x=500,y=0,代表坐标

t.bgcolor("black") #背景颜色为黑色

snow(s) #代表数量

ground(g) #代表数量

t.mainloop() #循环挂起

main()#方法二 简洁法#将方法一,注释掉,去掉下面的注释,启动方法二,即可

'''t.setup(800, 600, 500, 0) #窗口大小和位置,x=500,y=0,代表坐标

t.bgcolor("black") #背景颜色为黑色

snow(s) #代表数量

ground(g) #代表数量

t.done() #如果没有这个,结束后自动关闭窗口,有了,就不关闭。'''

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值