使用Python画了一棵圣诞树的实例代码

分享给大家一篇文章,教你怎样用Python画了一棵圣诞树,快来学习。

如何用Python画一个圣诞树呢?

最简单:

height = 5
​
stars = 1
for i in range(height):
  print((' ' * (height - i)) + ('*' * stars))
  stars += 2
print((' ' * height) + '|')

效果:

哈哈哈哈,总有一种骗了大家的感觉。

其实本文是想介绍Turtle库来画圣诞树。

import turtle
​
screen = turtle.Screen()
screen.setup(375, 700)

​
circle = turtle.Turtle()
circle.shape('circle')
circle.color('red')
circle.speed('fastest')
circle.up()
​
square = turtle.Turtle()
square.shape('square')
square.color('green')
square.speed('fastest')
square.up()
​
circle.goto(0, 280)
circle.stamp()
​
k = 0
for i in range(1, 13):
  y = 30 * i
  for j in range(i - k):
    x = 30 * j
    square.goto(x, -y + 280)
    square.stamp()
    square.goto(-x, -y + 280)
    square.stamp()
​
  if i % 4 == 0:
    x = 30 * (j + 1)
    circle.color('red')
    circle.goto(-x, -y + 280)
    circle.stamp()
    circle.goto(x, -y + 280)
    circle.stamp()
    k += 3
​
  if i % 4 == 3:
    x = 30 * (j + 1)
    circle.color('yellow')
    circle.goto(-x, -y + 280)
    circle.stamp()
    circle.goto(x, -y + 280)
    circle.stamp()
​
square.color('brown')
for i in range(13, 17):
  y = 30 * i
  for j in range(2):
    x = 30 * j
    square.goto(x, -y + 280)
    square.stamp()
    square.goto(-x, -y + 280)
    square.stamp()

效果:

方法二:

import turtle
​
​
# 定义圣诞树的绿叶函数
def tree(d, s):
  if d <= 0:
    return
  turtle.forward(s)
  tree(d - 1, s * .8)
  turtle.right(120)
  tree(d - 3, s * .5)
  turtle.right(120)
  tree(d - 3, s * .5)
  turtle.right(120)
  turtle.backward(s)
​
​
n = 100
""" 设置绘图速度
'fastest' : 0
'fast'  : 10
'normal' : 6
'slow'  : 3
'slowest' : 1
"""
turtle.speed('fastest') # 设置速度
​
turtle.left(90)
turtle.forward(3 * n)
turtle.color("orange", "yellow")
turtle.left(126)
​
​
# turtle.begin_fill()
for i in range(5):
  turtle.forward(n / 5)
  turtle.right(144)
  turtle.forward(n / 5)
  turtle.left(72)
  turtle.end_fill()
turtle.right(126)
turtle.color("dark green")
turtle.backward(n * 4.8)
​
# 执行函数
tree(15, n)
turtle.backward(n / 5)

效果:

到此这篇关于使用Python画了一棵圣诞树的实例代码的文章就介绍到这了,更多相关Python圣诞树内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用Python制作缩放自如的圣诞老人(圣诞树)

    圣诞节又要到了,虽说我们中国人不提倡过西方的节日,但是商家们还是很喜欢的,估计有对象的男孩纸女孩纸们也很喜欢吧. 今天的主题是为大家展示如何用python做一个不断变大的圣诞老人,就像西游记中能够随意变幻大小的神仙妖怪那样,算是送给大家的小礼物,先上个图吧! 不要心急,盯着图片看5秒 思路要点: 通过缩放获取等比大小的一组图片 将上述图片叠加到固定大小的底图中 按顺序组合图片生成动图 1.图片缩放 本篇文章的大部分工作都是基于opencv实现,而opencv进行图片缩放是极其容易的,不过这次我们

  • 使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例

    今天为大家介绍几个Python"装逼"实例代码,python绘制樱花.玫瑰.圣诞树代码实例,主要使用了turtle库 Python绘制樱花代码实例 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, t): time.sleep(0.0005) if branch > 3: if 8 <= branch <= 12:

  • 节日快乐! Python画一棵圣诞树送给你

    本文实例为大家分享了Python画圣诞树的具体代码,供大家参考,具体内容如下 源代码 from turtle import * import random import time #from unittest.mock import right #import color as color #import down as down #from cv2.cv2 import circle n = 80.0 speed("fastest") screensize(bg='seashell'

  • python圣诞树编写实例详解

    python圣诞树代码 1.简单的绘制圣诞树 新建tree1.py或者直接输入下面代码运行 #声明树的高度 height = 5 #树的雪花数,初始为1 stars = 1 #以数的高度作为循环次数 for i in range(height): print((' ' * (height - i)) + ('*' * stars)) stars += 2 #输出树干 print((' ' * height) + '|') 2.使用turtle绘制简单圣诞树 新建tree2py,输入以下代码 #导

  • 使用Python画了一棵圣诞树的实例代码

    分享给大家一篇文章,教你怎样用Python画了一棵圣诞树,快来学习. 如何用Python画一个圣诞树呢? 最简单: height = 5 ​ stars = 1 for i in range(height): print((' ' * (height - i)) + ('*' * stars)) stars += 2 print((' ' * height) + '|') 效果: 哈哈哈哈,总有一种骗了大家的感觉. 其实本文是想介绍Turtle库来画圣诞树. import turtle ​ sc

  • python画双y轴图像的示例代码

    很多时候可能需要在一个图中画出多条函数图像,但是可能y轴的物理含义不一样,或是数值范围相差较大,此时就需要双y轴. matplotlib和seaborn都可以画双y轴图像. 一个例子: import seaborn as sns import matplotlib.pyplot as plt # ax1 for KDE, ax2 for CDF f, ax1 = plt.subplots() ax1.grid(True) # ax1.set_ylim(0, 1) ax1.set_ylabel('

  • 用python画个奥运五环(附完整代码)

    完整代码 #绘制奥运五环 import turtle #导入turtle包 turtle.width(15) #定义线条宽度为15 turtle.color("red") turtle.circle(50) turtle.penup() #定义颜色,园半径,抬笔 turtle.goto(120,0) turtle.pendown() #定义线条走向,落笔 turtle.color("green") turtle.circle(50) turtle.penup() t

  • Python绘制全球疫情变化地图的实例代码

    目前全球疫情仍然比较严重,为了能清晰地看到疫情爆发以来至现在全球疫情的变化趋势,我绘制了一张疫情变化地图. 废话不多说,先上图 下面就来重点介绍下上面这张图的绘制过程,主要分为以下三个步骤: 数据收集 数据处理 画图 下面一个一个来说. 数据收集 这是万里长城的第一步,俗话说"巧妇难为无米之炊",既然是变化图,当然需要每个国家.每天的现有确诊病例数.好在现在各大网站都有疫情相关的专题页,我们可以直接抓数据.以网易为例 我们选择 XHR,重新刷新下网页可以看到有几个接口,其中 list-

  • python 把数据 json格式输出的实例代码

    有个要求需要在python的标准输出时候显示json格式数据,如果缩进显示查看数据效果会很好,这里使用json的包会有很多操作 import json date = {u'versions': [{u'status': u'CURRENT', u'id': u'v2.3', u'links': [{u'href': u'http://controller:9292/v2/', u'rel': u'self'}]}, {u'status': u'SUPPORTED', u'id': u'v2.2'

  • python 实现自动远程登陆scp文件实例代码

     python 实现自动远程登陆scp文件实例代码 实现实例代码: #!/usr/bin/expect if {$argc!=3} { send_user "Usage: $argv0 {path1} {path2} {Password}\n\n" exit } set path1 [lindex $argv 0] set path2 [lindex $argv 1] set Password [lindex $argv 2] spawn scp ${path1} ${path2} e

  • python将ansible配置转为json格式实例代码

    python将ansible配置转为json格式实例代码 ansible的配置文件举例如下,这种配置文件不利于在前端的展现,因此,我们用一段简单的代码将ansible的配置文件转为json格式的: [webserver] 192.168.204.70 192.168.204.71 [dbserver] 192.168.204.72 192.168.204.73 192.168.204.75 [proxy] 192.168.204.76 192.168.204.77 192.168.204.78

  • Python通过Pygame绘制移动的矩形实例代码

    Pygame是一个多用于游戏开发的模块. 本文实例主要是在演示框里实现一个移动的矩形实例代码,完整代码如下: #moving rectangle project import pygame from pygame.locals import * pygame.init() screen = pygame.display.set_mode((600,500)) pygame.display.set_caption("Drawing Rectangles") pos_x = 300 pos

  • Python+tkinter模拟“记住我”自动登录实例代码

    本文分享的代码主要是通过Python+tkinter模拟"记住我"自动登录的功能,具体介绍如下. 基本思路:如果某次登录成功,则创建临时文件记录有关信息,每次启动程序时尝试自动获取上次登录成功的信息并自动编写.本文主要演示思路,可根据实际系统中的需要进行改写,例如读取数据库并验证用户名和密码是否正确.对用户名和密码进行本地加密存储等等. import tkinter import tkinter.messagebox import os import os.path # 获取Windo

  • python与sqlite3实现解密chrome cookie实例代码

    本文研究的主要问题:有一个解密chrome cookie的事情,google出了代码,却不能正常执行,原因在于sqlite3的版本太低,虽然我切换到了python3.5的环境,但sqlite3的版本也只有3.6. google了许久,终于找到方法: 1. 进入页面 http://www6.atomicorp.com/channels/atomic/centos/6/x86_64/RPMS/ 2. 下载 atomic-sqlite-sqlite-3.8.5-2.el6.art.x86_64.rpm

随机推荐