python绘制雪景图

yipeiwu_com6年前Python基础

本文实例为大家分享了python绘制雪景图的具体代码,供大家参考,具体内容如下

绘制雪景图,应用到turtle和random。

from turtle import *
from random import *
# 绘制随机雪花
def DrawSnow(snow):
 x = randrange(-750, 750)
 y = randrange(-50, 400)
 snowcolor = (randrange(0, 255), randrange(0, 255), randrange(0, 255))
 snowsize = randrange(10, 20)
 snowstyle = choice([30, 45])
 snow.penup()
 snow.setpos(x, y)
 snow.pendown()
 colormode(255)
 snow.pencolor(snowcolor)
 for i in range(int(360/snowstyle)):
 if snowsize < 11:
  snowstyle = 90
 snow.forward(snowsize)
 snow.backward(snowsize)
 snow.right(snowstyle)
#绘制上半部分雪花
def InitSnow(n):
 snow = Turtle()
 for i in range(n):
 DrawSnow(snow)
#绘制下半部分雪地
def InitField():
 field = Turtle()
 colormode(255)
 for i in range(300):
 x = randrange(-850, 850)
 y = randrange(-400, 0)
 width = randrange(50, 200)
 length = randrange(3, 8)
 field.penup()
 field.setpos(x, y)
 field.pendown()
 tempcolor = int(-255 * y/400)
 print(tempcolor)
 fieldcolor = (tempcolor, tempcolor, tempcolor)
 field.color(fieldcolor, fieldcolor)
 field.begin_fill()
 field.fd(width)
 field.circle(length, 180)
 field.fd(width)
 field.circle(length, 180)
 field.end_fill()
 
def main():
 bgcolor("black")
 tracer(False)
 InitField()
 InitSnow(200)
 tracer(True)
 mainloop()
 
if __name__ == '__main__':
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

基于数据归一化以及Python实现方式

数据归一化: 数据的标准化是将数据按比例缩放,使之落入一个小的特定区间,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。 为什么要做归一化: 1...

在Linux中通过Python脚本访问mdb数据库的方法

在 linux 系统中连接 mdb 数据库,直接连接的话,mdb 默认的驱动无法识别非 windows 的路径, 所以不能使用常规的连接方式 DRIVER={Microsoft Ac...

解决pyttsx3无法封装的问题

解决pyttsx3无法封装的问题

一、python3下面的pyttsx3正常可以使用,类似下面: import pyttsx3 engine = pyttsx3.init() rate = engine.getPro...

python脚本实现音频m4a格式转成MP3格式的实例代码

python脚本实现音频m4a格式转成MP3格式的实例代码

前言 群里看到有人询问:谁会用python将微信音频文件后缀m4a格式转成mp3格式,毫不犹豫回了句:我会。 然后就私下聊起来了 解决方法介绍如下: 工具:windows系统,pytho...

Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)

之前自己也遇到过一次,这段时间在群里也遇到过几次的一个问题 用python2.7写的一段程序,里面用到了字典推导式,但是服务器版本是python2.6,无法运行。 今天查了下关于Dict...