程序员的浪漫,教你用Python代码画圣诞树

如何用Python画一个圣诞树呢?

最简单:

1height = 5
2
3stars = 1
4for i in range(height):
5    print((' ' * (height - i)) + ('*' * stars))
6    stars += 2
7print((' ' * height) + '|')

效果:

程序员的浪漫,教你用Python代码画圣诞树_第1张图片

哈哈哈哈,总有一种骗了大家的感觉。

其实本文是想介绍Turtle库来画圣诞树。

方法一:

1import turtle
 2screen = turtle.Screen()
 3screen.setup(800,600)
 4circle = turtle.Turtle()
 5circle.shape('circle')
 6circle.color('red')
 7circle.speed('fastest')
 8circle.up()
 9square = turtle.Turtle()
10square.shape('square')
11square.color('green')
12square.speed('fastest')
13square.up()
14circle.goto(0,280)
15circle.stamp()
16k = 0
17for i in range(1, 17):
18    y = 30*i
19    for j in range(i-k):
20        x = 30*j
21        square.goto(x,-y+280)
22        square.stamp()
23        square.goto(-x,-y+280)
24        square.stamp()
25    if i % 4 == 0:
26        x = 30*(j+1)
27        circle.color('red')
28        circle.goto(-x,-y+280)
29        circle.stamp()
30        circle.goto(x,-y+280)
31        circle.stamp()
32        k += 2
33    if i % 4 == 3:
34        x = 30*(j+1)
35        circle.color('yellow')
36        circle.goto(-x,-y+280)
37        circle.stamp()
38        circle.goto(x,-y+280)
39        circle.stamp()
40square.color('brown')
41for i in range(17,20):
42    y = 30*i
43    for j in range(3):
44        x = 30*j
45        square.goto(x,-y+280)
46        square.stamp()
47        square.goto(-x,-y+280)
48        square.stamp()
49turtle.exitonclick()

效果:

程序员的浪漫,教你用Python代码画圣诞树_第2张图片

方法二:

 

1from turtle import *
 2import random
 3import time
 4
 5n = 80.0
 6
 7speed("fastest")
 8screensize(bg='seashell')
 9left(90)
10forward(3*n)
11color("orange", "yellow")
12begin_fill()
13left(126)
14
15for i in range(5):
16    forward(n/5)
17    right(144)
18    forward(n/5)
19    left(72)
20end_fill()
21right(126)
22
23color("dark green")
24backward(n*4.8)
25def tree(d, s):
26    if d <= 0: return
27    forward(s)
28    tree(d-1, s*.8)
29    right(120)
30    tree(d-3, s*.5)
31    right(120)
32    tree(d-3, s*.5)
33    right(120)
34    backward(s)
35tree(15, n)
36backward(n/2)
37
38for i in range(200):
39    a = 200 - 400 * random.random()
40    b = 10 - 20 * random.random()
41    up()
42    forward(b)
43    left(90)
44    forward(a)
45    down()
46    if random.randint(0, 1) == 0:
47            color('tomato')
48    else:
49        color('wheat')
50    circle(2)
51    up()
52    backward(a)
53    right(90)
54    backward(b)
55time.sleep(60)

效果:

程序员的浪漫,教你用Python代码画圣诞树_第3张图片

感兴趣的话就赶紧尝试一下吧!

smiley_66.png

最后祝大家天天进步!!学习Python最重要的就是心态。我们在学习过程中必然会遇到很多难题,可能自己想破脑袋都无法解决。这都是正常的,千万别急着否定自己,怀疑自己。如果大家在刚开始学习中遇到困难,想找一个python学习交流环境,可以加入我们,领取学习资料,一起讨论,会节约很多时间,减少很多遇到的难题。程序员的浪漫,教你用Python代码画圣诞树_第4张图片

你可能感兴趣的:(python,几何学,开发语言)