python使用turtle库与random库绘制雪花

yipeiwu_com5年前Python基础

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

代码非常容易理解,画着玩玩还是可以的。直接上代码

# -*- coding: utf-8 -*-
"""
Created on Fri Jan 12 14:35:14 2018

@author: Administrator
"""

from turtle import *
from random import *

def ground():
 hideturtle()
 speed(100)
 for i in range(400):
  pensize(randint(5,10))
  x=randint(-400,350)
  y=randint(-280,-1)
  r=-y/280
  g=-y/280
  b=-y/280
  pencolor(r,g,b)
  penup()
  goto(x,y)
  pendown()
  forward(randint(40,100))

def snow():
 hideturtle()
 speed(100)
 pensize(2)
 for i in range(100):
  r=random()
  g=random()
  b=random()
  pencolor(r,g,b)
  penup()
  setx(randint(-350,350))
  sety(randint(1,270))
  pendown()
  dens=randint(8,12)
  snowsize=randint(10,14)
  for j in range(dens):
   forward(snowsize)
   backward(snowsize)
   right(360/dens)

def main():
 setup(800, 600, 0, 0)
 tracer(False)
 bgcolor("black")
 snow()
 ground()
 tracer(True)
 mainloop()
main()

运行结果

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

相关文章

python追加元素到列表的方法

本文实例讲述了python追加元素到列表的方法。分享给大家供大家参考。具体实现方法如下: scores = ["1","2","3"] # add a score score = i...

关于django 数据库迁移(migrate)应该知道的一些事

命令 首先数据库迁移的两大命令: python manage.py makemigrations & python manage.py migrate 前者是将model层转为...

Python实用日期时间处理方法汇总

原则, 以datetime为中心, 起点或中转, 转化为目标对象, 涵盖了大多数业务场景中需要的日期转换处理 步骤: 1. 掌握几种对象及其关系 2. 了解每类对象的基本操作方法 3....

利用Python脚本实现ping百度和google的方法

Ping服务 ping 是基于 XML_RPC 标准协议的更新通告服务,用于Blog把内容更新快速通知给搜索引擎,以便搜索引擎及时进行抓取和更新。 计算机就相当于 RPC Client...

Python实现多线程的两种方式分析

本文实例讲述了Python实现多线程的两种方式。分享给大家供大家参考,具体如下: 目前python 提供了几种多线程实现方式 thread,threading,multithreadin...