iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python用turtle库绘画圣诞树
  • 352
分享到

python用turtle库绘画圣诞树

2024-04-02 19:04:59 352人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录前言一、Turtle是什么?二、使用步骤1.引入库2.turtle绘图的基础知识三、圣诞树代码总结前言 圣诞节快到了,是不是想用python画一个可爱的圣诞树,我在各大网站都查了

前言

圣诞节快到了,是不是想用python画一个可爱的圣诞树,我在各大网站都查了一下,都不太美观,然后我就学习了一下别人的代码改写了一下,自己加了一些东西,弄的好看一些了,给大家开源出来,欢迎大家指正学习,也欢迎转载,请注明出处哦~

画出来的图形如图:

在这里插入图片描述

一、Turtle是什么?

Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

二、使用步骤

1.引入库

代码如下:


import turtle as t  # as就是取个别名,后续调用的t都是turtle
from turtle import *
import random as r

2.turtle绘图的基础知识

(1) 画笔运动命令

在这里插入图片描述

(2) 画笔控制命令

在这里插入图片描述

(3) 全局控制命令

在这里插入图片描述

(4) 全局控制命令

在这里插入图片描述

三、圣诞树代码

代码如下:


# TangYiJia 2021/12/15

import turtle as t  # as就是取个别名,后续调用的t都是turtle
from turtle import *
import random as r


n = 100.0

speed(1000)  # 定义速度
pensize(5)  # 画笔宽度
screensize(800, 800, bg='black')  # 定义背景颜色,可以自己换颜色
left(90)
forward(250)              # 开始的高度
color("orange", "yellow")  # 定义最上端星星的颜色,外圈是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, 50) == 0:  # 如果觉得彩灯太多,可以把取值范围加大一些,对应的灯就会少一些
        color('tomato')  # 定义第一种颜色
        circle(3)  # 定义彩灯大小
    elif r.randint(0, 30) == 1:
        color('orange')  # 定义第二种颜色
        circle(4)  # 定义彩灯大小
    elif r.randint(0, 50) == 2:
        color('blue')  # 定义第三种颜色
        circle(2)  # 定义彩灯大小
    elif r.randint(0, 30) == 3:
        color('white')  # 定义第四种颜色
        circle(4)  # 定义彩灯大小
    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, 100)
backward(50)

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)



def drawsnowman(n,m,a,b):  # 画雪人 (n,m)是头和身子交点的坐标,a是头的大小,m是身体的大小
    t.Goto(n, m)
    t.pencolor("white")
    t.pensize(2)
    t.fillcolor("white")
    t.seth(0)
    t.begin_fill()
    t.circle(a)
    t.end_fill()
    t.seth(180)
    t.begin_fill()
    t.circle(b)
    t.end_fill()
    t.pencolor("black")
    t.fillcolor("black")
    t.penup()    # 右眼睛
    t.goto(n-a/4, m+a)
    t.seth(0)
    t.pendown()
    t.begin_fill()
    t.circle(2)
    t.end_fill()
    t.penup()    # 左眼睛
    t.goto(n+a/4, m+a)
    t.seth(0)
    t.pendown()
    t.begin_fill()
    t.circle(2)
    t.end_fill()
    t.penup()  # 画嘴巴
    t.goto(n, m+a/2)
    t.seth(0)
    t.pendown()
    t.fd(5)
    t.penup()       # 画扣子
    t.pencolor("red")
    t.fillcolor("red")
    t.goto(n, m-b/4)
    t.pendown()
    t.begin_fill()
    t.circle(2)
    t.end_fill()
    t.penup()
    t.pencolor("yellow")
    t.fillcolor("yellow")
    t.goto(n, m-b/2)
    t.pendown()
    t.begin_fill()
    t.circle(2)
    t.end_fill()
    t.penup()
    t.pencolor("orange")
    t.fillcolor("orange")
    t.goto(n, m-(3*b)/4)
    t.pendown()
    t.begin_fill()
    t.circle(2)
    t.end_fill()

drawsnowman(-200, -200, 20, 30)
drawsnowman(-250, -200, 30, 40)

t.up()
t.goto(100, 200)
t.down()
t.color("dark red", "red")  # 定义字体颜色
t.penup()
t.write("小唐's Christmas Tree", font=("Comic Sans MS", 16, "bold"))  # 定义文字、位置、字体、大小
t.end_fill()

def drawsnow():  # 画雪花
    t.ht()  # 隐藏笔头,ht=hideturtle
    t.pensize(2)  # 定义笔头大小
    for i in range(200):  # 画多少雪花
        t.pencolor("white")  # 定义画笔颜色为白色,其实就是雪花为白色
        t.pu()  # 提笔,pu=penup
        t.setx(r.randint(-350, 350))  # 定义x坐标,随机从-350到350之间选择
        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用turtle库绘画圣诞树的文章就介绍到这了,更多相关python绘画圣诞树内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python用turtle库绘画圣诞树

本文链接: https://www.lsjlt.com/news/160009.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python用turtle库绘画圣诞树
    目录前言一、Turtle是什么?二、使用步骤1.引入库2.turtle绘图的基础知识三、圣诞树代码总结前言 圣诞节快到了,是不是想用python画一个可爱的圣诞树,我在各大网站都查了...
    99+
    2024-04-02
  • python中怎么用turtle库绘画圣诞树
    这篇文章主要讲解了“python中怎么用turtle库绘画圣诞树”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python中怎么用turtle库绘画圣诞树”吧!画出来的图形如图:一、Turt...
    99+
    2023-06-22
  • 怎么用python turtle库画圣诞树
    本篇内容主要讲解“怎么用python turtle库画圣诞树”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用python turtle库画圣诞树”吧!首先我们的目标是这样...
    99+
    2023-06-22
  • python turtle库画圣诞树详细代码教程
    目录1. 圣诞树的本体2. 蝴蝶结3. 星星4. 圣诞帽5. 圣诞袜6. 最后奉上完整代码首先我们的目标是这样子的: 那么他有什么成分呢?有圣诞树的本体、大小蝴蝶结、星星、圣诞帽和...
    99+
    2024-04-02
  • 怎么用python画圣诞树
    这篇文章主要介绍了怎么用python画圣诞树,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如何用python画一个圣诞树呢?Turtle库来画圣诞树。1.方块圣诞树impor...
    99+
    2023-06-22
  • 圣诞节教你用Python绘制爱心圣诞树
    心血来潮的一个想法,分享一下代码 代码 # -*- coding: utf-8 -*- """ Created on Sat Dec 12 12:29:09 2020 @aut...
    99+
    2024-04-02
  • 怎么使用Python画圣诞树
    使用Python画圣诞树可以使用turtle模块来实现。下面是一个简单的示例代码:```pythonimport turtledef...
    99+
    2023-08-18
    python
  • 使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码
    绘制樱花的代码:```pythonimport turtle# 设置画布大小turtle.setup(800, 600)# 画樱花的...
    99+
    2023-09-16
    python
  • 用Python画圣诞树代码示例
    拿去给自己所思所念之人 from turtle import * import time setup(500, 500, startx=None, starty=None) ...
    99+
    2024-04-02
  • wps怎么画圣诞树
    要在WPS中画圣诞树,可以按照以下步骤进行操作:1. 打开WPS软件,选择“WPS演示”模块,新建一个演示文稿。2. 在新建的演示文...
    99+
    2023-09-16
    wps
  • Python制作圣诞树和圣诞树词云
    目录一、前言二、Python画圣诞树1. 圣诞树1号2. 圣诞树2号3. 圣诞树3号三、Python制作圣诞树词云四、彩蛋一、前言 圣诞节庆祝和送礼物貌似现在已经成为全球流行的习惯~...
    99+
    2024-04-02
  • 如何使用Python画一棵圣诞树
    如何使用Python画一棵圣诞树,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。t.pensize(10) # 修改画笔大小效果图:①这是t.pensize(10)的效果②这是t...
    99+
    2023-06-22
  • 怎么用Python绘制爱心圣诞树
    这篇文章主要介绍了怎么用Python绘制爱心圣诞树,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。代码# -*- coding: utf-8&nb...
    99+
    2023-06-22
  • 使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实现
    以下是使用Python的turtle库绘制樱花、玫瑰和圣诞树的代码实现。樱花:```pythonimport turtledef d...
    99+
    2023-09-17
    python
  • 用python画了个圣诞树给女朋友
    目录前言开始教学创建设置画笔绘制图像正片开始最后前言 嗨,彦祖们,不会过圣诞了还是一个人吧?今天我们来讲一下如何用python来画一个圣诞树,学会就快给那个她发过去吧,我的朋友圈已经...
    99+
    2024-04-02
  • Python如何制作圣诞树和圣诞树词云
    这篇文章将为大家详细讲解有关Python如何制作圣诞树和圣诞树词云,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言圣诞节庆祝和送礼物貌似现在已经成为全球流行的习惯~本文利用 Python 制作圣诞树...
    99+
    2023-06-22
  • python画一个圣诞树实现示例
    目录前言效果展示功能模块总结前言 我们上一篇博客,给大家展现了一个动态的爱心。今天,我们给大家画一个圣诞树,我们一起来看看效果吧。 效果展示 我们先来看看最终的效果看看我们画的圣诞树...
    99+
    2023-05-19
    python画圣诞树 python 圣诞树
  • 如何利用python/R语言绘制圣诞树
    本篇内容介绍了“如何利用python/R语言绘制圣诞树”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Pythonimport tu...
    99+
    2023-06-22
  • 教你使用Python画棵圣诞树完整代码
    最近圣诞节快到啦,CSDN的热搜也变成了”代码画颗圣诞树“,看了几篇博客,发现原博主把一些圣诞树给融合在了一起。 我更喜欢树叶更茂盛的感觉,所以就加了一句代码。 t.pensize...
    99+
    2024-04-02
  • 用python画圣诞树三种代码示例介绍
    目录前言1.方块圣诞树2.线条圣诞树3.豪华圣诞树总结前言 这篇文章主要介绍了使用Python画了一棵圣诞树的实例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作