python动态心形代码_少儿Python试听课:心形图案

b1f22c70abeddce4c01f99fd8231e7a4.gif

前言

    语言是工具,用来实现想法的工具,而非目的。Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

    Turtle是python中引入的一个非常简单绘图工具,可以用非常简短的、简单的程序来创建极其漂亮的、复杂的视觉效果。虽然海龟绘图所具备的python知识体系不适合用来为学生构造系统全面而又扎实的个人知识链,但却很容易引起孩子的好奇心,激发孩子的兴趣点,满足孩子的成就感,所以具备成为python试听课的先天优势。

    在教学实践活动中,之所以选择“绘制桃心”作为试听课,除了其具备turtle绘图简单和视觉化的效果之外,还有就是它的代码逻辑简单,图形结构只有两个部分组成,容易让初次接触代码编程的孩子接受和理解,也方便老师针对不同接受能力的孩子酌情增减代码,实现差异化教学,让每个孩子都有一种感受:来时似懂非懂,上完课豁然开朗又有新的探求需求。

课堂导入

1)师生问好,在黑板上写出学生和老师的姓名。

2)情绪调节,通过故事,聊天,笑话,游戏等各种方式,放松学生的情绪,让学生尽快融入教学环境,接受老师,认同上课规则,形成轻松欢快的课堂氛围。

3)情景导入,运用问答,视频,图片,情景叙述等一种或多种方式导入今天上课的主题:编程——python——turtle——心形图案。

编程

    编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。这种人和计算体系之间交流的过程就是编程。

    编程并不难学,就像你用毛笔,钢笔,铅笔来写文章一样,不在于你哪种笔用的熟练,重要的是文章的内容有深度。编程也一样,重要的是逻辑,逻辑思维很严谨,发散型思维很强,就能编出好东西。所以在少年时期,不是要把主要精力放到学习具体的编程语言上,而是在学习的过程中培养出自己的编程思维和算法思维。

3f70d357de0676200f98946371649eed.png

Python

    Python是一种计算机程序设计语言。 是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。    Python的创始人为荷兰人吉多·范罗苏姆 (Guido van Rossum)。 1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。 之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是因为Guido当时正在追一部电视喜剧《蒙提.派森的飞行马戏团》(Monty Python's Flying Circus) 53a582a43b645c79a93abf6f619e6682.png 。     自从1991年python出现在编程场景中,就秉承"优雅"、"明确"、"简单"的设计哲学,坚持了清晰划一的风格,这使得Python成为一门易读、易维护,易学习并且被大量用户所欢迎的、用途广泛的语言。 尤其是在人工智能领域,无论从哪个方面看,Python都处于领导地位。

4b3b4066f4cc24c6197730cd52d93724.png

海龟绘图

   海龟绘图最初源自20世纪60年代的Logo编程语言,之后一些很酷的 Python 程序员构建了turtle库,让其他程序员只需要import turtle,就可以在Python中使用海龟作图。    在海龟作图中,会有一个虚拟的海龟(箭头)在屏幕上来回移动。 这个海龟带着一只钢笔,绘图过程可以看作是一个小海龟行走用笔留下的轨迹。 通过编写代码,以各种模式移动海龟,可以绘制出令人惊奇的图片。

d50d62eaba5ad072a4475ddc040c8a2d.png

心形图案

    红色的心形在人们心中,象征着浪漫而热烈的爱,人们大多认为,心形指的就是怦然心动的心脏。 相互爱慕的情侣会通过赠送新兴物品,绘制心形图案来表达爱意,倾诉思恋;    心形是由两个半圆形突出部分拼在一起而成,上凹下尖。通常心形符号会以红色作为表示。    对某一事物的喜爱也可以用心形来表达,比如我们可以用python绘制出心形图案来表达对python的喜爱。

f3567a0d5c3e7be30ddc31c1929eb4d6.png

设计思路

1.IDLE的使用方法。

2.绘制心形图案可以分为两个部分:绘制形状和填充颜色。

  • 填充颜色比较简单,直接用相关代码可以直接完成。

  • 绘制形状有多种方式,这里用一种比较简单的方法。可以把心形看成是四条线合 

     起来的封闭图形,下半部分为两条相同的线段,上半部分为两条相同的弧线。

3f87c3ee1e6b1f95fd9615de4115dc36.png

综上所述,绘图步骤就可以是先画出一条直线,然后再画出相邻的弧线,接着再画出剩下的弧线和直线。

9f7dce0fbdfc457f6db13c240f86ee33.png

代码解析

1.导入turtle绘图,在Python的IDLE环境中已经内置了turtle模块,无需重新下载,直接输入import turtle从标准库里面引入turtle就可以用海龟作画了。然后用把导入的海龟赋值为t代替,可以简化后面的代码输入。

3aaa5c8963ba36daff5079bdacda4b55.png

2.规定海龟作图的速度为1,可以清晰地观察到绘图的移动轨迹,便于理解代码逻辑。同时规定画笔的颜色为red。

8c0272c5e8cd0657fe896e4ce00d7b94.png

3.t.begin_fill()和t.end_fill()代码用来填充颜色,会按设置的颜色填充位于它们之间的代码画出来的图形。这里填充颜色为画笔颜色red,不做设置。

4.画左侧的直线,海龟起始方向为0度(箭头水平向右指向,即3点钟方向),逆时针旋转为左转。先左转140度让海龟指向正确的前进方向,然后向前移动111.65像素(可以微调)。

f3ad32fa28659386685b2e8592be3295.png

5.画左侧的弧线,用的是微积分法则,每次右转1度后移动1像素,这个动作一共执行了200次,最终右转了200度,形成一个200度的分线圆弧。这里用for循环来规定这个动作的循环次数。

8faba8828054934d2ee9797b3dabff28.png

6.画右侧弧线前应该先调整方向,左侧弧线画完海龟指向-60度,与中心y轴线夹角为60度,所以需要先左转120度使海龟面向60度,保持左右弧线与y轴线夹角相同。

2dfdeba51cda50344f649f680ae35c2b.png

7.画右侧弧线和直线,代码与左侧相同。

8.最后隐层海龟(箭头),结束绘图。

5fcb21fb0729d3a69528ce1fbe583b15.png

9,定义函数,两条弧线的代码相同,可以对这一段画弧线的代码定义函数,在需要画弧线的时候调用函数。定义的函数需要放在调用之前,这样调用curvemove()时才能起到作用。

810783fe5db2fb1457b215a13b820b49.png6927a1c70bf0b96435e2aa18eebf7a44.png

关注微信公众号,后台回复心形图案,免费获取源代码。

17bb05d96f9d562248d19b11dbc1e55b.png

a04635f8055207665314a5aad3d2d51b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值