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获取CPU、内存和硬盘等windowns系统信息的2个例子
Apr 15 Python
python编程实现随机生成多个椭圆实例代码
Jan 03 Python
pandas获取groupby分组里最大值所在的行方法
Apr 20 Python
Linux下多个Python版本安装教程
Aug 15 Python
Python安装pycurl失败的解决方法
Oct 15 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
Mar 14 Python
python通过paramiko复制远程文件及文件目录到本地
Apr 30 Python
python顺序执行多个py文件的方法
Jun 29 Python
python使用itchat模块给心爱的人每天发天气预报
Nov 25 Python
在django中自定义字段Field详解
Dec 03 Python
python软件都是免费的吗
Jun 18 Python
python如何导入依赖包
Jul 13 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中redis的用法深入解析
2014/02/20 PHP
PHP7扩展开发之hello word实现方法详解
2018/01/15 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
laravel-admin 后台表格筛选设置默认的查询日期方法
2019/10/03 PHP
学习YUI.Ext 第三天
2007/03/10 Javascript
理解Javascript_01_理解内存分配原理分析
2010/10/11 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
js实现网页标题栏闪烁提示效果实例分析
2014/11/20 Javascript
Bootstrap每天必学之日期控制
2016/03/07 Javascript
Svg.js实例教程及使用手册详解(一)
2016/05/16 Javascript
chrome浏览器如何断点调试异步加载的JS
2016/09/05 Javascript
深入解析js轮播插件核心代码的实现过程
2017/04/14 Javascript
Vue和Bootstrap的整合思路详解
2017/06/30 Javascript
vue中进入详情页记住滚动位置的方法(keep-alive)
2018/09/21 Javascript
VUE 配置vue-devtools调试工具及安装方法
2018/09/30 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
Vue Extends 扩展选项用法完整实例
2019/09/17 Javascript
vue选项卡切换登录方式小案例
2019/09/27 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
浅谈vue项目,访问路径#号的问题
2020/08/14 Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
2020/09/04 Javascript
对python numpy数组中冒号的使用方法详解
2018/04/17 Python
python selenium 查找隐藏元素 自动播放视频功能
2019/07/24 Python
Python如何在DataFrame增加数值
2020/02/14 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
如何利用python正则表达式匹配版本信息
2020/12/09 Python
CSS3实现歌词进度文字颜色填充变化动态效果的思路详解
2020/06/02 HTML / CSS
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
毕业生的求职信范文分享
2013/12/04 职场文书
顶撞老师检讨书
2014/02/07 职场文书
毕业论文评语大全
2014/04/29 职场文书
自主招生教师推荐信
2014/05/10 职场文书
班子群众路线教育实践个人对照检查材料思想汇报
2014/09/30 职场文书
小学重阳节活动总结
2015/03/24 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
Vue组件化(ref,props, mixin,.插件)详解
2022/05/15 Vue.js