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向日志输出中添加上下文信息

除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息。比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用...

python实现list元素按关键字相加减的方法示例

本文实例讲述了python实现list元素按关键字相加减的方法。分享给大家供大家参考,具体如下: Python list中的元素按关键字相加或相减: # coding=utf-8 #...

Python中分支语句与循环语句实例详解

前言 本篇博文介绍一下Python中的if条件语句、while循环语句、for in循环语句以及break和continue控制关键字。 分支的基本语法 if 条件表达式: 语句1 语...

Python 递归函数详解及实例

Python 递归函数详解及实例

Python 递归函数 如果一个函数体直接或者间接调用自己,那么这个函数就称为递归函数.也就是说,递归函数体的执行过程中可能会返回去再次调用该函数.在python里,递归函数不需要任何特...

python2.x实现人民币转大写人民币

本文实例为大家分享了python实现人民币转大写人民币的具体代码,供大家参考,具体内容如下 直接上代码: # -*- coding: utf-8 -*- def changenum(...