python圣诞树编写实例详解


Posted in Python onFebruary 13, 2020

python圣诞树代码

1、简单的绘制圣诞树

新建tree1.py或者直接输入下面代码运行

#声明树的高度

height = 5

#树的雪花数,初始为1

stars = 1

#以数的高度作为循环次数

 

for i in range(height):

 print((' ' * (height - i)) + ('*' * stars))

 stars += 2

#输出树干

print((' ' * height) + '|')

python圣诞树编写实例详解

2、使用turtle绘制简单圣诞树

新建tree2py,输入以下代码

#导入turtle库

import turtle

#设置屏幕大小

screen = turtle.Screen()

screen.setup(800,600)

#获取画笔并设置一些属性:圆形、红色、快

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, 17):

 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 += 2

 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(17,20):

 y = 30*i

 for j in range(3):

  x = 30*j

  square.goto(x,-y+280)

  square.stamp()

  square.goto(-x,-y+280)

  square.stamp()

turtle.exitonclick()

运行:

python圣诞树编写实例详解

3、使用Turtle绘制复杂圣诞树

新建tree3.py,输入以下代码

#导入所依赖的库

from turtle import *

import random

import time

 

n = 80.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)

运行:

python圣诞树编写实例详解

以上就是python圣诞树代码的详细内容,感谢大家的学习和对三水点靠木的支持。

Python 相关文章推荐
Python中的Classes和Metaclasses详解
Apr 02 Python
Python中的异常处理简明介绍
Apr 13 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
python 获取网页编码方式实现代码
Mar 11 Python
Django中间件工作流程及写法实例代码
Feb 06 Python
python实现名片管理系统项目
Apr 26 Python
Python自动化完成tb喵币任务的操作方法
Oct 30 Python
Django多进程滚动日志问题解决方案
Dec 17 Python
dpn网络的pytorch实现方式
Jan 14 Python
flask 框架操作MySQL数据库简单示例
Feb 02 Python
python定义类的简单用法
Jul 24 Python
python和opencv构建运动检测器的实现
Mar 03 Python
python如何实现复制目录到指定目录
Feb 13 #Python
Python制作简易版小工具之计算天数的实现思路
Feb 13 #Python
解决python-docx打包之后找不到default.docx的问题
Feb 13 #Python
Python更新所有已安装包的操作
Feb 13 #Python
python离线安装外部依赖包的实现
Feb 13 #Python
python获取依赖包和安装依赖包教程
Feb 13 #Python
python连接mongodb集群方法详解
Feb 13 #Python
You might like
php float不四舍五入截取浮点型字符串方法总结
2013/10/28 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
PHP生成短网址方法汇总
2016/07/12 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
PHP tp5中使用原生sql查询代码实例
2020/10/28 PHP
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
点击弹出层外区域关闭弹出层jquery特效示例
2013/08/25 Javascript
location.href用法总结(最主要的)
2013/12/27 Javascript
HTML5+setCutomValidity()函数验证表单实例分享
2015/04/24 Javascript
原生js实现addClass,removeClass,hasClass方法
2016/04/27 Javascript
js事件驱动机制 浏览器兼容处理方法
2016/07/23 Javascript
微信小程序 http请求详细介绍
2016/10/09 Javascript
Base64(二进制)图片编码解析及在各种浏览器的兼容性处理
2017/02/09 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
vue.js+element 默认提示中英文操作
2020/11/11 Javascript
js实现有趣的倒计时效果
2021/01/19 Javascript
[22:20]初生之犊-TI4第5名LGD战队纪录片
2014/08/13 DOTA
基于Python如何使用AIML搭建聊天机器人
2016/01/27 Python
Python基础练习之用户登录实现代码分享
2017/11/08 Python
分享一个简单的python读写文件脚本
2017/11/25 Python
python实现排序算法解析
2018/09/08 Python
python编写简单端口扫描器
2019/09/04 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
2019/12/04 Python
Python实现动态给类和对象添加属性和方法操作示例
2020/02/29 Python
马来西亚网上美容店:Hermo.my
2017/11/25 全球购物
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
新手上路标语
2014/06/20 职场文书
世界卫生日宣传活动总结
2015/02/09 职场文书
大学考试作弊检讨书
2015/05/06 职场文书
故意伤害罪辩护词
2015/05/21 职场文书
南京大屠杀观后感
2015/06/02 职场文书
教学副校长工作总结
2015/08/13 职场文书
教你使用Jenkins集成Harbor自动发布镜像
2022/04/03 Servers
ICOM R71E和R72E图文对比解说
2022/04/07 无线电