本文主要介绍了圣诞装饰的python实现,展示出最终效果、实验步骤、及相关知识,在文末附录中,小编还会介绍一些这次活动没有运用到的海龟库知识、用c++编译出圣诞树。用c++编译出《铃儿响叮当》的方法来充当背景音乐,以及编辑器的环境搭建,小编在这些环节中会讲基本的代码框架和知识运用希望大家多多支持
一、前言
一年一度的圣诞节又到了,相信大家眼中满是圣诞树、圣诞老人、圣诞麋鹿的样子吧,小编觉得圣诞节氛围浓浓,再用电脑实现以下再适合不过了,所以今天小编写了一篇圣诞专场的博文,也请大家指教,编译环境文章最后有讲。
二、创意名
这次我们主要是用python海龟库来实现圣诞树图像,关于用c++蜂鸣器做《铃儿响叮当》的事情,我们明年再细聊~~
三、效果展示
最终我们要实现的是这个样子的,里面有圣诞树,拐杖糖,圣诞火车(有点简陋),圣诞雪人和圣诞祝福,虽然比较简洁但也有满满的心意和氛围
圣诞专场
四、实现步骤
此次制作,主要用到的是python海龟库的相关知识,主要运用到的知识有:
from turtle import*
打开海龟库
bgcolor()
背景颜色
pencolor()
海龟颜色
pensize()
更改画笔大小
penup()
抬笔,笔抬起来后不会留下印记
pendown()
落笔,笔落下来后会在画布上留下印记
goto(x坐标,y坐标)
让笔去到某地,一般搭配抬笔和落笔使用
write("需要写的字",font=("字体",字的大小,"bold"))
这个函数主要是用来让海龟直接写汉字的,就如上图的圣诞快乐双语版。
其他函数
在海龟编辑器中,还有本文没有用到的其他函数
setheading() // 设置朝向
stamp() //印章
clearstamp() //清除印章
speed() //更改速度
forward()//前进,画直线
right() // 右转
left()//左转
五、编码实现
我们只需要把上文中的函数进行排列直至能实现你的意思即可,最终代码如下:
from turtle import*
bgcolor("pink")
pencolor("brown")
pensize(11)
penup()
goto(0,-50)
pendown()
goto(0,-200)
goto(90,-200)
goto(90,-50)
penup()
pencolor("green")
goto(0,50)
pendown()
goto(-80,-50)
goto(170,-50)
goto(90,50)
penup()
goto(30,90)
pendown()
goto(-30,50)
goto(120,50)
goto(60,90)
penup()
pencolor("red")
goto(45,90)
pendown()
circle(15)
penup()
goto(0,0)
pendown()
circle(5)
penup()
goto(90,0)
pendown()
circle(5)
penup()
goto(-100,80)
pensize(40)
pendown()
x=80
for i in range(10):
if(i%2==0):
pencolor("red")
else:
pencolor("white")
goto(-100,x)
x-=25//利用循坏来画拐杖糖
penup()
goto(-220,-160)
pendown()
pencolor("red")
right(90)
circle(60,180)
pencolor("red")
pencolor("red")
pensize(50)
penup()
goto(-500,500)
pendown()
goto(-350,500)
goto(-500,480)
goto(-350,480)
goto(-350,460)
goto(-500,460)
goto(-500,440)
goto(-350,440)
goto(-500,420)
goto(-350,420)
penup()
goto(-520,520)
pensize(10)
pendown()
circle(8)
goto(0,520)
penup()
goto(-250,500)
pendown()
pensize(50)
goto(-100,500)
goto(-100,480)
goto(-250,480)
goto(-250,460)
goto(-100,460)
goto(-100,440)
goto(-250,440)
goto(-100,420)
goto(-250,420)
penup()
pensize(100)
goto(50,400)
pendown()
goto(50,550)
goto(150,550)
goto(150,400)
goto(50,400)
penup()
pensize(15)
goto(70,500)
pendown()
pencolor("white")
goto(130,500)
penup()
goto(70,650)
pendown()
goto(130,650)
penup()
pensize(60)
pencolor("black")
goto(90,530)
pendown()
goto(110,530)
goto(110,560)
goto(90,560)
goto(90,590)
goto(110,590)
goto(110,620)
goto(90,620)
penup()
goto(-535,500)
pencolor("red")
pendown()
pensize(10)
goto(-535,380)
goto(100,380)
penup()
pencolor("white")
goto(-400,-200)
pendown()
pensize(105)
circle(45)
penup()
goto(-380,-350)
pendown()
pensize(120)
circle(80)
pensize(20)
penup()
goto(-550,-100)
pencolor("red")
pendown()
goto(-350,-100)
goto(-450,-60)
goto(-550,-100)
pencolor("black")
penup()
goto(-480,-160)
pendown()
circle(5)
penup()
goto(-380,-160)
pendown()
circle(5)
penup()
pencolor("brown")
goto(-530,-250)
pendown()
goto(-560,-230)
penup()
goto(-360,-250)
pendown()
goto(-330,-230)
penup()
pencolor("red")
goto(-180,-350)
write("圣诞快乐",font=("方正少儿简体",90,"bold"))
penup()
goto(-250,200)
write("Merry Christmas",font=("方正少儿简体",90,"bold"))
penup()
goto(1000,1000)
附录一:c++实现圣诞树
方法很简单就是不断输出字符就可以了,最后的效果是这样的
附录二:c++版《铃儿响叮当》
用c++编出《铃儿响叮当》主要运用到了c++里面自带的蜂鸣器,
主要代码框架:
一、头文件
二、定义各常量代表的音符
三、定义各常量所代表的时间长短
四、进入主函数
五、不断地使用c++蜂鸣器
六、调用上述定义的常量,用来实现歌曲旋律
七、结束程序,运行即可
这里就不给源代码啦!
附录二:编译环境搭建
这里还是推荐编程猫,像这种要用到海龟画图的编程猫呈现效果要好一些,但是如果要编一些题目还是推荐IDLE
浏览器里输入turtle,选择第一个,进入此画面:
把里面的自带代码删除,就可以开始编辑了。
这是快捷编辑方式,另外,还可以进入官网下载下来以便后续会用到