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 相关文章推荐
Flask入门教程实例:搭建一个静态博客
Mar 27 Python
Python中的字典与成员运算符初步探究
Oct 13 Python
Python字典中的键映射多个值的方法(列表或者集合)
Oct 17 Python
Python设计模式之适配器模式原理与用法详解
Jan 15 Python
Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例
Jan 23 Python
Python实战购物车项目的实现参考
Feb 20 Python
python使用HTMLTestRunner导出饼图分析报告的方法
Dec 30 Python
基于python和flask实现http接口过程解析
Jun 15 Python
Python基础教程(一)——Windows搭建开发Python开发环境
Jul 20 Python
Python3使用 GitLab API 进行批量合并分支
Oct 15 Python
Django视图类型总结
Feb 17 Python
 python中的元类metaclass详情
May 30 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
《雄兵连》《烈阳天道》真的来了
2020/07/13 国漫
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
2009/08/07 PHP
ThinkPHP空模块和空操作详解
2014/06/30 PHP
php进行支付宝开发中return_url和notify_url的区别分析
2014/12/22 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
2016/09/22 PHP
laravel 实现设置时区的简单方法
2019/10/10 PHP
js跑步算法的实现代码
2013/12/04 Javascript
JavaScript更改字符串的大小写
2015/05/07 Javascript
JavaScript基础篇(3)之Object、Function等引用类型
2015/11/30 Javascript
jQuery 3.0 的变化及使用方法
2016/02/01 Javascript
AngularJs IE Compatibility 兼容老版本IE
2016/09/01 Javascript
微信小程序 实现列表项滑动显示删除按钮的功能
2017/04/13 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
js模块加载方式浅析
2017/08/12 Javascript
vue路由跳转时判断用户是否登录功能的实现
2017/10/26 Javascript
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
2017/12/18 jQuery
Element UI 自定义正则表达式验证方法
2018/09/04 Javascript
解决ie11 SCRIPT5011:不能执行已释放Script的代码问题
2019/05/05 Javascript
vue实现带复选框的树形菜单
2019/05/27 Javascript
js+css实现扇形导航效果
2020/08/18 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
python通过shutil实现快速文件复制的方法
2015/03/14 Python
Python开发的实用计算器完整实例
2017/05/10 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
基于python3 OpenCV3实现静态图片人脸识别
2018/05/25 Python
对python中的高效迭代器函数详解
2018/10/18 Python
Python中实现输入超时及如何通过变量获取变量名
2020/01/18 Python
使用python-pptx包批量修改ppt格式的实现
2020/02/14 Python
浅谈keras 模型用于预测时的注意事项
2020/06/27 Python
eBay美国官网:eBay.com
2020/10/24 全球购物
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
2014年五四青年节活动方案
2014/03/29 职场文书
中餐厅经理岗位职责
2014/04/11 职场文书
领导班子党的群众路线对照检查材料
2014/09/25 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
Memcached介绍及php-memcache扩展安装
2021/04/01 PHP