本文摘自php中文网,作者angryTom,侵删。

python圣诞树代码
1、简单的绘制圣诞树
新建tree1.py或者直接输入下面代码运行
(推荐学习:Python教程)
1 2 3 4 5 6 7 8 9 10 11 | #声明树的高度
height = 5
#树的雪花数,初始为1
stars = 1
#以数的高度作为循环次数
for i in range(height):
print (( ' ' * (height - i)) + ( '*' * stars))
stars += 2
#输出树干
print (( ' ' * height) + '|' )
|

2、使用turtle绘制简单圣诞树
新建tree2py,输入以下代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | #导入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()
|
运行:

3、使用Turtle绘制复杂圣诞树
新建tree3.py,输入以下代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | #导入所依赖的库
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中的map怎么使用
Python基于flask_sqlalchemy的网页显示数据库信息的代码示例
Python为什么要装32位的
Python如何利用公式计算π
Python装饰器以什么开头
Python把二维数组输出为图片的方法
Python合法标识符要求是什么
如何在ubuntu中安装Python 3.6?
Python爬虫防止ip被封的方法
Python文本特征抽取与向量化算法学习实例详解
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python圣诞树代码