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


Posted in Python onNovember 27, 2020

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

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

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

最简单:

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

效果:

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

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

其实本文是想介绍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()

效果:

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

方法二:

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画了一棵圣诞树的实例代码的文章就介绍到这了,更多相关Python圣诞树内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python将字典内容存入mysql实例代码
Jan 18 Python
使用Scrapy爬取动态数据
Oct 21 Python
python实现年会抽奖程序
Jan 22 Python
使用python来调用CAN通讯的DLL实现方法
Jul 03 Python
Django中间件基础用法详解
Jul 18 Python
Python字符串格式化输出代码实例
Nov 22 Python
使用matplotlib绘制图例标签中带有公式的图
Dec 13 Python
Python切割图片成九宫格的示例代码
Mar 10 Python
Anaconda+Pycharm环境下的PyTorch配置方法
Mar 13 Python
python pandas利用fillna方法实现部分自动填充功能
Mar 16 Python
使用pyplot.matshow()函数添加绘图标题
Jun 16 Python
解决python中0x80072ee2错误的方法
Jul 19 Python
python 用opencv实现霍夫线变换
Nov 27 #Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
Nov 27 #Python
五种Python转义表示法
Nov 27 #Python
Django如何继承AbstractUser扩展字段
Nov 27 #Python
如何使用 Flask 做一个评论系统
Nov 27 #Python
python+openCV对视频进行截取的实现
Nov 27 #Python
Python环境配置实现pip加速过程解析
Nov 27 #Python
You might like
Windows7下PHP开发环境安装配置图文方法
2010/05/20 PHP
php简单解析mysqli查询结果的方法(2种方法)
2016/06/29 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
window.showModalDialog使用手册
2007/01/11 Javascript
Add Formatted Text to a Word Document
2007/06/15 Javascript
豆瓣网的jquery代码实例
2008/06/15 Javascript
jQuery 使用手册(三)
2009/09/23 Javascript
JQuery入门基础小实例(1)
2015/09/17 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
jQuery实现点击表格单元格就可以编辑内容的方法【测试可用】
2016/08/01 Javascript
javascript验证香港身份证的格式或真实性
2017/02/07 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
2017/03/02 Javascript
vuejs父子组件之间数据交互详解
2017/08/09 Javascript
Js利用Canvas实现图片压缩功能
2017/09/13 Javascript
vue.js实现点击后动态添加class及删除同级class的实现代码
2018/04/04 Javascript
Python语言描述机器学习之Logistic回归算法
2017/12/21 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
python处理“
2019/06/10 Python
Python学习笔记之迭代器和生成器用法实例详解
2019/08/08 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
2019/09/07 Python
Python爬虫新手入门之初学lxml库
2020/12/20 Python
python包的导入方式总结
2021/03/02 Python
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
学生处主任岗位职责
2013/12/01 职场文书
简单租房协议书范本
2014/08/20 职场文书
影视广告专业求职信
2014/09/02 职场文书
党的生日演讲稿
2014/09/10 职场文书
培训计划通知
2015/07/15 职场文书
2016入党培训心得体会范文
2016/01/08 职场文书
三严三实·严以修身心得体会
2016/01/15 职场文书
SpringBoot2 参数管理实践之入参出参与校验的方式
2021/06/16 Java/Android
Html5同时支持多端sdk的小技巧
2021/11/17 HTML / CSS