用Python画出圣诞树,瞧瞧我这简易版的吧

news2024/9/22 23:18:58

前言

嗨嗨,大家好,我是小圆

今天来实现一下 用python画出圣诞树

代码

模块

源码.点击领取即可

import turtle as t
from turtle import *
import random as r
import time

圣诞树细节以及画布大小

画布大小,背景颜色都可以改,我之前把黑色背景换成粉色的,看着也还行

n = 100.0
python学习交流Q群:770699889 ### 源码领取 
speed("fastest")
screensize(bg='black')
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)
 
def drawlight():
    if r.randint(0, 30) == 0:
        color('tomato')
        circle(6)
    elif r.randint(0,30) == 1:
        color('orange')
        circle(3)
    else:
        color('dark green')
 
 
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)
    drawlight()#同时画小彩灯
    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 * r.random()
    b = 10 - 20 * r.random()
    up()
    forward(b)
    left(90)
    forward(a)
    down()
    if r.randint(0, 1) == 0:
            color('tomato')
    else:
        color('wheat')
    circle(2)
    up()
    backward(a)
    right(90)
    backward(b)

写字

这里的颜色 文字 自己都可以改哈 (这个应该不用教吧哈哈)

t.color("dark red","red")
t.write("Merry Christmas",align ="center",font=("Comic Sans MS",40,"bold"))#写字

雪花

def drawsnow():
    t.ht()  #隐藏笔头,ht=hideturtle
    t.pensize(2)  #定义笔头大小
    for i in range(200): #画多少雪花
        t.pencolor("white") #定义画笔颜色为白色,其实就是雪花为白色
        t.pu() #提笔,pu=penup
  • 定义x、y坐标

x坐标,随机从-350到350之间选择
y坐标,注意雪花一般在地上不会落下,所以不会从太小的纵座轴开始

t.setx(r.randint(-350,350)) #定义x坐标
t.sety(r.randint(-100,350)) #定义y坐标
  • 雪花瓣数
t.pd() #落笔,pd=pendown
dens = 6 #雪花瓣数设为6
snowsize = r.randint(1,10) #定义雪花大小
for j in range(dens): #就是6,那就是画5次,也就是一个雪花五角星
    #t.forward(int(snowsize))  #int()取整数
    t.fd(int(snowsize))
    t.backward(int(snowsize))
    #t.bd(int(snowsize))  #注意没有bd=backward,但有fd=forward,小bug
    t.right(int(360/dens))  #转动角度

末尾小细节

drawsnow()#画雪花
t.done()  # 完成,否则会直接关闭

效果图

在这里插入图片描述

最后

今天的分享到这里就结束了

顺便给大家推荐一些Python视频教程,希望对大家有所帮助:

Python零基础教学合集

对文章有问题的,或者有其他关于python的问题,可以在评论区留言或者私信我哦
觉得我分享的文章不错的话,可以关注一下我,或者给文章点赞(/≧▽≦)/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/59768.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构——链表

目录 一、链表概述 二、模拟实现链表 1、结点 2、遍历链表 3、获取链表的长度 4、添加元素 &#xff08;1&#xff09;、头插法 &#xff08;2&#xff09;、尾插法 &#xff08;3&#xff09;、在指定位置插入元素 5、删除元素 &#xff08;1&#xff09;、删…

Springboot整合mybatis多数据源

Mybatis中如何配置多数据源 一 什么情况下会用到多数据库&#xff1f; 场景1&#xff1a; 一个商城网站&#xff0c;一个游戏网站&#xff0c;商城网站已经做好&#xff0c;游戏网站正在开发&#xff0c;游戏网站上的很多道具需要用到商城网站的产品数据&#xff0c;这种情况…

[附源码]Python计算机毕业设计Django基于JEE平台springboot技术的订餐系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

wy的leetcode刷题记录_Day57

wy的leetcode刷题记录_Day57 声明 本文章的所有题目信息都来源于leetcode 如有侵权请联系我删掉! 时间&#xff1a;2022-12-1 前言 leetcode 每日一题二叉树 1779. 找到最近的有相同 X 或 Y 坐标的点 701. 二叉搜索树中的插入操作 目录wy的leetcode刷题记录_Day57声明前言1…

多目标Jaya优化算法(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭:行百里者,半于九十。 📋📋📋本文目录如下:🎁🎁🎁 💥1 概述 多目标 Jaya 算…

CG-FX 风向传感器 聚碳 浅谈工作原理

产品概述 本产品外型小巧轻便&#xff0c;美观坚固&#xff0c;便于携带和组装&#xff0c;风向标形状设计合理&#xff0c;对自然界大气风向具有准确的定位作用。采用聚碳材质&#xff0c;具有防雨、防腐蚀、坚固实用等优点。 功能特点 ◆体积小&#xff0c;重量轻&#xf…

[附源码]Python计算机毕业设计Django绿色生鲜

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

[附源码]JAVA毕业设计酒店管理系统(系统+LW)

[附源码]JAVA毕业设计酒店管理系统&#xff08;系统LW&#xff09; 目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&…

anaconda使用系列教程--3)conda命令详解

管理conda 在任何时候你可以通过在命令后边跟上-help来获得该命令的完整文档。例如&#xff0c;你可以通过如下的命令来学习conda的update命令conda update --help Conda会返回你安装Anaconda软件的版本conda --version 升级当前版本conda update conda 查看当前conda信息cond…

[附源码]计算机毕业设计打印助手平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[附源码]计算机毕业设计基于springboot的旅游景点管理系统的设计与实现

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

JSP+MySQL基于ssm的主题酒店管理系统

以往的主题酒店管理事务处理主要使用的是传统的人工管理方式,这种管理方式存在着管理效率低、操作流程繁琐、保密性差等缺点,长期的人工管理模式会产生大量的文本餐饮预订与文本数据,这对事务的查询、更新以及维护带来不少困难。随着互联网时代的到来,现如今网络的覆盖率已近非…

【WebRTC】QoS 拥塞控制 GCC 理论 Sender Side BWE 或 REMB

介绍 Sender Side Bandwidth Estimation 发送方带宽预估。Sender Side BWE 是新方案&#xff0c;利用的是 RTCP 中的 TransportCC 协议。 Receiver Estimated Maximum Bitrate 接收端预估最大码率。REMB 是旧方案&#xff0c;利用的是 RTCP 中的 REMB 协议。 背景 WebRTC 中…

C++自动定义的成员函数

C自动提供了下面这些成员函数&#xff1a; 默认构造函数&#xff0c;如果没有定义构造函数默认析构函数&#xff0c;如果没有定义复制构造函数&#xff0c;如果没有定义赋值运算符&#xff0c;如果没有定义地址运算符&#xff0c;如果没有定义 另有移动构造函数和移动赋值运算…

业余时间可以做什么副业,什么副业可以赚钱

大家好&#xff0c;我是蝶衣王的小编 现在的年轻人大多是过着朝九晚五的社畜生活&#xff0c;但是朝九晚五就意味着工资可能不是很高&#xff0c;生活压力会比较大&#xff0c;很多人就会想能不能利用业余时间做一些副业呢​&#xff1f;答案当然是可以的 那么&#xff0c;什…

售前工程师工作内幕揭秘:面试实战技巧

售前工程师工作内幕揭秘&#xff1a;面试实战技巧前言一、售前面试问题&#xff0c;基本就下面这些二、售前工程师岗位普遍误区三、售前工程师核心技能四、面试中&#xff0c;主动出击&#xff0c;才是王道五、对行业的了解是做好售前的基础前言 看到网上很多关于售前工程师面…

git分支上的tag

在发布一个版本时&#xff0c;我们通常先在版本库中打一个标签&#xff0c;这样&#xff0c;就唯一确定了打标签时刻的版本。将来无论什么时候&#xff0c;取某个标签的版本&#xff0c;就是把那个打标签的时刻的历史版本取出来。所以&#xff0c;标签也是版本库的一个快照。在…

Spring的创建与使用

⭐️前言⭐️ 在了解了Spring的核心与设计思想以后,下边就是Spring的具体使用&#xff0c;这篇文章主要介绍Spring项目的创建和Bean对象的存放与取出。 &#x1f349;博客主页&#xff1a; &#x1f341;【如风暖阳】&#x1f341; &#x1f349;精品Java专栏【JavaSE】、【备…

Kong(二)通过案例快速了解使用

一 Kong安装目录结构的说明 后续看看里面有啥 /usr/local/bin --> kong命令的路径/etc/kong/ --> kong默认会寻找配置文件/usr/local/kong --> Kong的日志 -->/usr/local/kong/logs/usr/local/lib/lua/5.1/usr/local/lib/…

[附源码]Python计算机毕业设计Django人事系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…