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设计】。

相关文章

11个并不被常用但对开发非常有帮助的Python库

11个并不被常用但对开发非常有帮助的Python库

近来,越来越多的数据科学家开始使用Python,我不由得想到,尽管他们从pandas、scikit-learn和numpy这些库中得到了不少好处,但是他们也许错过了一些也许较老但同样有帮...

python 用所有标点符号分隔句子的示例

问题 给出一段话,由短句组成,短句之间可能被任意标点符号隔开。想要提取所有的短句。 解决 使用 re.split 函数,用正则式匹配的方法,一次性分隔所有短句。 import re...

python中logging模块的一些简单用法的使用

python中logging模块的一些简单用法的使用

用Python写代码的时候,在想看的地方写个print xx 就能在控制台上显示打印信息,这样子就能知道它是什么了,但是当我需要看大量的地方或者在一个文件中查看的时候,这时候print就...

浅谈python3中input输入的使用

浅谈python3中input输入的使用

今天谈一下关于python中input的一些基本用法(写给新手入门之用,故只谈比较实用的部分)。 首先,我们可以看一下官方文档给我们的解释(在python的shell中输入命令即可):...

Django框架实现的分页demo示例

Django框架实现的分页demo示例

本文实例讲述了Django框架实现的分页。分享给大家供大家参考,具体如下: 首先初始化model,建表 class Book(models.Model): name = mode...