分享给大家一篇文章,教你怎样用Python画了一棵圣诞树,快来学习。

如何用Python画一个圣诞树呢?
最简单:
-
height = 5 -
-
stars = 1 -
for i in range(height): -
print((' ' * (height - i)) + ('*' * stars)) -
stars += 2 -
print((' ' * height) + '|')
效果:

哈哈哈哈,总有一种骗了大家的感觉。
其实本文是想介绍Turtle库来画圣诞树。
-
import turtle -
-
screen = turtle.Screen() -
screen.setup(375, 700) -
-
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, 13): -
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 += 3 -
-
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(13, 17): -
y = 30 * i -
for j in range(2): -
x = 30 * j -
square.goto(x, -y + 280) -
square.stamp() -
square.goto(-x, -y + 280) -
square.stamp()
效果:

方法二:
-
import turtle -
-
-
# 定义圣诞树的绿叶函数 -
def tree(d, s): -
if d <= 0: -
return -
turtle.forward(s) -
tree(d - 1, s * .8) -
turtle.right(120) -
tree(d - 3, s * .5) -
turtle.right(120) -
tree(d - 3, s * .5) -
turtle.right(120) -
turtle.backward(s) -
-
-
n = 100 -
""" 设置绘图速度 -
'fastest' : 0 -
'fast' : 10 -
'normal' : 6 -
'slow' : 3 -
'slowest' : 1 -
""" -
turtle.speed('fastest') # 设置速度 -
-
turtle.left(90) -
turtle.forward(3 * n) -
turtle.color("orange", "yellow") -
turtle.left(126) -
-
-
# turtle.begin_fill() -
for i in range(5): -
turtle.forward(n / 5) -
turtle.right(144) -
turtle.forward(n / 5) -
turtle.left(72) -
turtle.end_fill() -
turtle.right(126) -
turtle.color("dark green") -
turtle.backward(n * 4.8) -
-
# 执行函数 -
tree(15, n) -
turtle.backward(n / 5)
效果:

本文介绍两种使用Python绘制圣诞树的方法。第一种利用简单的循环和字符串操作实现,第二种借助Turtle库绘制更复杂的图形。通过这些实例,读者可以了解Python的基本语法及Turtle库的使用。





