网络消费网 >  品牌机 > > 正文
python圣诞树代码 直接复制就可以生成吗?
时间:2022-02-10 15:10:12

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 turtle绘制

版权声明:
    凡注明来网络消费网的作品,版权均属网络消费网所有,未经授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明"来源:网络消费网"。违反上述声明者,本网将追究其相关法律责任。
    除来源署名为网络消费网稿件外,其他所转载内容之原创性、真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考并自行核实。
热文

网站首页 |网站简介 | 关于我们 | 广告业务 | 投稿信箱
 

Copyright © 2000-2020 www.sosol.com.cn All Rights Reserved.
 

中国网络消费网 版权所有 未经书面授权 不得复制或建立镜像
 

联系邮箱:920 891 263@qq.com

备案号:京ICP备2022016840号-15

营业执照公示信息