震惊!国内已知第一款Scratch 3.0编程软件KittenBlock推出Python编程功能!

很早之前我就撰写了一系列利用python turtle来模仿生成scratch动画效率的例子,系列文章标题为从scratch到Python,今天有一款直接可以用Python操作scratch的软件出现了,通过这个软件可以像拖代码块一样用Python对scratch编程.
Python如今得到了中小学编程教育的任何,山东省启用了青岛出版社出版的信息技术教材,有滨州,枣庄,临沂等,其中第五册上就有Python的内容,如何更有趣的教成为了可以探讨的主题;同时舟山吕老师在学校开展了micro:bit教学,在学生掌握了图形化以后,Python将会成为接下来学习的主题;而Python已经进入了浙江信息技术教材.
这款软件为开展Python教学提供了一个有趣的教学工具.
本文电脑阅读效果更佳.

转载请注明出处
作者:郎丶
Email:964683112@qq.com

KittenBlock初体验

可以看到我利用python实现了让小猫说hello world,代码如下

from scratch3 import *

looks.say('hello world',1)

很简单有没有

软件安装

首先下载KittenBlock,安装之后启动软件.


然后点击Python就可以愉快的编程了


默认代码是让小猫叫起来,毕竟秋天来了嘛,很简单有没有.

from scratch3 import *

looks.say('hello world',1)

不过可能会不执行,毕竟是开风气之先的软件嘛,


如果出现的是这个提示,Error:python.exe: can't open file 'C:\Program': [Errno 2] No such file or directory没有关系,由解决的办法.

原理

其实你只要用任意编辑器写一个Python文件,然后执行就可以了,不一定非得用这里的编辑器的.
当然你也可以用交互式命令行

  • 打开KittenBot安装目录C:\Program Files (x86)\Kittenblock\Python
  • 双击Python.exe
  • 在>>>后面输入代码
  • 回车执行

每输入一行就回车,就像图里那样,如果你有Python基础那最好了,你就可以体验scratch的魅力;如果你没有编程基础,不用担心,照葫芦画瓢就好了.


任意编辑器都可以,sublime当然也是可以的,不过**你要确保Python可以找到scratch3这个类,你可以把C:\Program Files (x86)\Kittenblock\Python加入到你的Python的查找路径.或者直接在这个目录里面写文件.

我会以命令行为例进行说明,我所有输入你也可以在KittenBlock输入

可用命令

 motion 运动部分
motion.move(10) #让精灵移动10步
motion.gotoXY(100, 100) #让精灵移动到坐标x100,y100
motion.turnLeft(90) # 让精灵左转90度
motion.turnRight(90) # 让精灵右转90度
motion.pointTo(180) # 让精灵指向180度
motion.glideXY(100,100,sec=5) # 在5s内让精灵滑行到100,100
motion.changeX(10) # 改变X坐标
motion.changeY(10) # 改变Y坐标
motion.setX(10) # 设置X坐标
motion.setY(10) # 设置Y坐标
motion.xPosition() # 返回X坐标
motion.yPosition() # 返回Y坐标
motion.direction() # 返回精灵朝向

# looks 外观部分
looks.say("hello world") #让精灵说话
looks.show() # 显示精灵
looks.hide() # 隐藏精灵
looks.switchCostume("custome1") # 改变精灵皮肤
looks.switchBackground("background") # 改变舞台背景
looks.nextCustome() # 切换到下一个皮肤
looks.nextBackground() # 切换到下一个背景
looks.changeEffect("color",10) # 改变精灵特效, 第一个参数是效果类型,第二个参数是改变的值
looks.setEffect("color",99) # 设置精灵特效, 参数如上
looks.clearEffect() # 清楚特效
looks.changeSize(5) # 改变精灵大小
looks.setSize(50) # 设置精灵大小

# looks 声音部分
sound.play("meow") # 播放声音,对应精灵所带的音效
sound.stopAll() # 停止所有声音
sound.playDrum(1,0.25) # 打鼓,第一个参数对应鼓的类型可以去对应图块查看,第二个参数是节拍长度
sound.rest(0.5) # 停止节拍
sound.playNote(60,0.5) # 播放音符,第二个参数是节拍长度
sound.setInstrument(2) # 设置乐器类型
sound.changeEffect(1,10) # 改变声音特效
sound.setEffect(1,10) # 设置声音特效
sound.clearEffect() # 清除所有声音特效
sound.changeVolume(10) # 改变音量
sound.setVolume(100) # 设置音量
sound.volume() # 读取音量
sound.changeTempo() # 改变节奏
sound.setTempo() # 设置节奏
sound.tempo() # 返回节奏

# pen 画笔部分
pen.clear() # 清除当前图像
pen.stamp() # 用当前精灵印章
pen.penDown() # 落下画笔
pen.penUp() # 抬起画笔
pen.setColor("#FF0000") # 设置画笔颜色
pen.changeColor(10) # 改变颜色HUE值
pen.setShade(10) # 设置画笔色度
pen.changeShade(10) # 改变画笔色度
pen.setSize(10) # 设置画笔大小
pen.changeSize(1) # 改变画笔大小

让小猫动起来

motion.move(10)

敲入这样的命令就会发现,小猫动起来了,跟我们之前学习的scratch是不是很相似呢?

旋转的小猫

下面我们让小猫转几圈

for x in range(1000):
   motion.turnLeft(1)

注意旋转完毕要恢复90°

注意到途中的:输入冒号之后,需要缩进的,四个空格,然后回车再回车执行代码,python的缩进也是语法规则的一种哟

绘制正方形

我们接下来用小猫绘制一个正方形把


还可以

from scratch3 import *
pen.clear()
pen.penDown()

for x in range(4):
    motion.move(100)
    motion.turnLeft(90)

播放声音

先来播放个音阶把

from scratch3 import *
import time

for x in range(36,98):
    sound.playNote(x,1)
    time.sleep(0.25)

执行下代码看看是什么效果

import time是导入时间相关函数
这里用到的time.sleep是等待0.25秒,你可以调整等待的时间
然后我们来改变下乐器

from scratch3 import *
import time

sound.setInstrument(9)
for x in range(36,98):
  sound.playNote(x,1)
  time.sleep(0.25)

反过来呢

from scratch3 import *
import time

sound.setInstrument(1)
for x in range(98,36,-1):
    sound.playNote(x,1)
    time.sleep(0.25)    

动画原理


我们知道只要快速切换图片就会产生动画效果

from scratch3 import *
import time

for x in range(100):
    looks.nextCustome()
    time.sleep(0.1)

time.sleep(1)类似于控制中的等待,意思是等待1秒.尝试改变sleep方法的值观察不同的动画效果

总结

KittenBlock推出的Python功能涵盖了常见的代码块,加上很多python代码功能比如数学运算啊,控制结构啊,变量和列表都是Python自带的,用这个工具结合舞台角色可以完成很多复杂的动画了.

肯定有人会说,这个跟logo有什么区别呢?区别似乎不大,但是相比于logo对于角色的控制大大加强.

我们相信这款软件一定会在不断的完善之中,越来越好.基本上scratch有的模块这里都会有对应,大家用scratch设计完,然后用Python实现就好了,不足之处在于目前对于事件还没有良好的支持,所以改进的空间很大,但是我们要给新生事物足够的信心.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,815评论 25 707
  • 明天高考就将正式开始了,相信广大考生都十分紧张。不知道有多少考生今夜会难以入睡,也不知道有多少人会和我一样想起多年...
    豆格斯阅读 209评论 0 2
  • 1.转自:离散余弦变换(DCT)的定义_小火车_新浪博客 已知离散傅里叶变换(DFT)为: 由于许多要处理的信号都...
    horu阅读 39,892评论 1 17
  • 如果可以回到从前 让您天天把我抱在您的怀里 让我尽情的嗅着 您身上的汗水味还有新安江烟草味 我用小手按摩您的双肩 ...
    爱上一叶浮萍阅读 391评论 23 23
  • 这两天终于收到了报到证,为了把户口迁回家,必须去省教育厅盖章。这件小事,让我感到现在办事机构真的人性化了很多。 没...
    溪云28阅读 158评论 0 0