栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

当我给女同学用python画了个圣诞树后……

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

当我给女同学用python画了个圣诞树后……

前言

嗨,彦祖们,不会过圣诞了还是一个人吧?今天我们来讲一下如何用python来画一个圣诞树,学会就快给那个她发过去吧,我的朋友圈已经让圣诞树刷屏了!这不就来给各位彦祖们教了,看完记得给个三连哦!



当然都是好看的,但是码神莫,就是要搞点不一样的用,python来画一个!或者搞个前端来画!

开始教学

这次我们用的是python中的turtle(海龟)库,是python中的一个内置库不需要额外安装

  1. 创建窗口
  2. 设置画笔
  3. 绘制图形
创建

setup()函数,其中的参数为width,height,startx=None,starty=None,分别表示窗口宽,高,及,窗口在电脑屏幕上的横坐标和纵坐标。

turtle.setup(800,600)

设置画笔

三个属性函数

pensize() #粗细
speed(speed) #运动速度
color(color) #设置画笔颜色
绘制图像

这就要提到海龟的坐标体系了,以窗口中心为原点,以右为正方向,上方为y轴正方向。

移动
  1. forward(distance) #向前移动
  2. backward(distance) #向后移动
  3. goto(x,y=None)# 移动到相应的位置
角度控制

和上面的移动大同小异,都是3项控制
4. right(degree)#向右转动
5. left(degree)#向左转动
6. seth(degree)#转动到某个方向

图形绘制,图像填充

这个今天用不到,也就不说了,欢迎爱好的彦祖们,评论区见!

正片开始
from turtle import *
import random #随机,用来搞小圆点
import time

n = 100.0

speed("fastest") #速度快
screensize(bg='seashell')
left(90)
forward(3 * n)
color("orange", "yellow")
begin_fill()
left(126)

for i in range(5):
    forward(n / 5)
    right(144)
    forward(n / 5)
    left(72)
end_fill()
right(126)

color("dark green")
backward(n * 4.8)


def tree(d, s):
    if d <= 0: return
    forward(s)
    tree(d - 1, s * .8)
    right(120)
    tree(d - 3, s * .5)
    right(120)
    tree(d - 3, s * .5)
    right(120)
    backward(s)


tree(15, n)
backward(n / 2)

for i in range(200):
    a = 200 - 400 * random.random()
    b = 10 - 20 * random.random()
    up()
    forward(b)
    left(90)
    forward(a)
    down()
    if random.randint(0, 1) == 0:
        color('tomato')
    else:
        color('wheat')
    circle(2)
    up()
    backward(a)
    right(90)
    backward(b)

time.sleep(60) #进程推迟时间

最后

本文纯属标题党,如有雷同,必然不是码神,哈哈哈

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/664075.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号