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脚本替换指定行实现步骤
Jul 11 Python
selenium在执行phantomjs的API并获取执行结果的方法
Dec 17 Python
python 根据时间来生成唯一的字符串方法
Jan 14 Python
详解python持久化文件读写
Apr 06 Python
python tkinter窗口最大化的实现
Jul 15 Python
Python算法中的时间复杂度问题
Nov 19 Python
使用python绘制二维图形示例
Nov 22 Python
Jupyter notebook快速入门教程(推荐)
May 18 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
Jun 23 Python
如何使用 Python 读取文件和照片的创建日期
Sep 05 Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 Python
如何判断pytorch是否支持GPU加速
Jun 01 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数据库连接
2006/10/09 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
php类中的各种拦截器用法分析
2014/11/03 PHP
PHP自带ZIP压缩、解压缩类ZipArchiv使用指南
2015/03/03 PHP
php常用表单验证类用法实例
2015/06/18 PHP
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
js/jquery判断浏览器的方法小结
2014/09/02 Javascript
JavaScript对象学习小结
2015/09/02 Javascript
全面解析JavaScript的Backbone.js框架中的Router路由
2016/05/05 Javascript
Angular 2应用的8个主要构造块有哪些
2016/10/17 Javascript
微信小程序 常见问题总结(4058,40013)及解决办法
2017/01/11 Javascript
js 函数式编程学习笔记
2017/03/25 Javascript
Vue.use源码分析
2017/04/22 Javascript
微信小程序之电影影评小程序制作代码
2017/08/03 Javascript
ES6的Fetch异步请求的实现方法
2018/12/07 Javascript
nodejs微信开发之自动回复的实现
2019/03/17 NodeJs
微信小程序自定义组件传值 页面和组件相互传数据操作示例
2019/05/05 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
解决vue单页面应用进入页面加载所有 js 的问题
2020/08/12 Javascript
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
[01:09:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第一场 6.2
2018/06/04 DOTA
Python2.x利用commands模块执行Linux shell命令
2016/03/11 Python
python中numpy包使用教程之数组和相关操作详解
2017/07/30 Python
OpenCV HSV颜色识别及HSV基本颜色分量范围
2019/03/22 Python
python 实现turtle画图并导出图片格式的文件
2019/12/07 Python
爱他美官方海外旗舰店:Aptamil奶粉
2017/12/22 全球购物
宝拉珍选官方旗舰店:2%水杨酸精华液,收缩毛孔粗大和祛痘
2018/07/01 全球购物
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
微观物理专业自荐信
2014/01/26 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
党委书记个人检查对照材料思想汇报
2014/10/11 职场文书
企业整改报告范文
2014/11/08 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
小学语文教师研修日志
2015/11/13 职场文书
幼儿教师三分钟演讲稿
2019/06/21 职场文书
Java并发编程必备之Future机制
2021/06/30 Java/Android