
CC喵
5分钟前:
Python是一门面向对象、动态解释的高级编程语言。面向对象指的就是万物皆“对象”,这个在高级语言代码封装中广泛应用,如果对arduino熟悉的同学常用的各种Class类也是面向对象的封装,本章一起来详细学习一下吧
NEWS
什么是python
一句话解释就是:Python是一门面向对象、动态解释的高级编程语言。
面向对象指的就是万物皆“对象”,这个在高级语言代码封装中广泛应用,如果对arduino熟悉的同学常用的各种Class类也是面向对象的封装。例如一个苹果可以理解为一个对象,它的属性包括尺寸、重量和色泽等等;它的方法有从树上摘下来(生产一个苹果),方法也可以是吃掉或者拿来砸别人。当然砸人的时候你需要给这个方法输入一个参数就是目标人物,这时候的目标人物又是一个对象。
动态解释指的是没有编译过程,你可以像跟一个机器人说活一样使用python语言。熟悉Arduino的同学肯定被各种编译报错,库找不到参数对不上等问题困扰过;而且Arduino每次写完程序都需要重新编译和重新烧录到目标,这个过程从几十秒到几分钟不等。
Python最大特点就是其简洁性,素有“人生苦短,我用python”之称。Python目前广泛用于各种服务器和科学计算场合,特别是近期人工智能的两大阵营(Google的TensorFlow和Facebook的Caffe)都使用python作为开发语言,使得Python热度继续升温。大家可以从github的语言活跃度看到python已经稳稳站住第二的位置。

为什么要学习python
一个非常现实的问题就是,未来机器人和人工智能的时代如果最简单的程序思维都没有则无疑跟文盲一样,也基本没办法跟机器人和AI做交流。以目前的技术水平来看,如果要让机器人跟一个仆人一样智能短期内不可能实现。但是如果人能懂一点点机器人的思考方式或者程序执行方法,那个会极大地降低人类繁复的重复劳动,并且未来大部分繁复劳作极大可能被机器人或AI取代。另外一个非常现实的问题就是以作者接近10年的研发工程师经验,研发工程师在普遍企业内都享受着极高的待遇和尊重,当然加班严重是目前人才严重短缺的副作用,后面机器越来越智能会改善的。
可能还有同学看了第一名是JavaScript额,为啥不从js开始呢?的确现在前端技术火的一塌糊涂,小喵家的kittenblock、app还有网站都是拿js写的。但是js对初学者并不如python友好,而且js深入到某一个阶段会有一个极大的技术瓶颈(各种js框架和异步调用陷阱)。而且现在复杂的js程序都存在打包这个流程,动态解析基本名存实亡。而经过我们实际的调研和测试,python的简洁特性完全可以让一个8~10岁的小朋友上手,并且也不存在学到半年后提高碰到一些他们当前知识面无法理解和跨域的瓶颈。当他到上大学的时候已经有了接近10年的python开发经验,而其他同学才刚刚将对电脑的认识从一台游戏机转变为一个工具。
为什么使用Kittenblock学习python
Kittenblock有着友好的用户环境,内置了python3.6的执行环境,安装完软件就配置完成。
Kittenblock可以使用python操作舞台上所有元素,你甚至可以完全使用python编写出跟scratch一样或者更加炫酷的项目。并且同类软件中第一个实现了从图形化方块转译成python代码的功能。
python最开始为面向服务器开发,即使到现在为止都没有比较简单的图形化解决方案。比较常用的有tkinter和pyqt,但是这两者都需要复杂的配置和后编译处理流程,初学者很可能踩到坑里面。实际研发就是各种花式踩坑,如果经验不足的初学者很可能就会踩到坑里面再也爬不出来了,但是每一次从坑里面爬出来都是对你技术的一次极大提高。
Kittenblock支持Micropython
Micropython是运行在微处理器上的python语言。学习过Arduino的同学可能会乐于制作各种有趣的小项目,这些项目使用micropython也基本能实现,毕竟兴趣是最好的老师,一旦失去兴趣则编程会变成异常痛苦的过程。目前kittenblock目前支持microbit,并可以将完整的scratch图形化程序翻译成micropython代码并烧录到microbit上。同时也支持‘动态解释’的玩法,也就是不经过烧录执行scratch图形化方块。
下载和安装Kittenblock
Kittenblock最新版本可以在我们的社区论坛下载:
小喵家社区 Kittenblock最新版本
https://bbs.kittenbot.cn/forum.php?mod=viewthread&tid=115
安装完成后界面如下

从下一章我们从Micropython和Microbit开始介绍python的玩法,如果手头还没有microbit欢迎光临我们网店多多支持
Microbit主板基本介绍
这里假设大家手上都有这样一块Microbit主板了

如果大家使用Makecode学习Microbit或者想了解相关历史的可以看看我们社区相关的帖子
小喵家社区:Micro:bit教程汇总目录
https://bbs.kittenbot.cn/forum.php?mod=viewthread&tid=104&extra=page%3D1
主板功能模块

打开软件和连接Microbit
首先用microusb数据线连接microbit和你的电脑
连接上后系统会自动安装一些通用驱动,完成后可以看到你的microbit成为一个类似u盘的存在。

如果插上后找不到microbit的U盘,请换一个数据线,如果还不行加我们的qq群(568084773)求助。
请记住这个u盘只用于烧写固件,千万不要拷贝一些microbit固件以外的文件到上面,有变砖的风险。
打开Kittenblock
打开Kittenblock后在菜单栏硬件部分选择microbit

选择硬件会伴随着插件的加载,我们可以看到kittenblock侧边栏自动加入了Microbit和Robotbit两个插件

接下来我们要做的是给microbit安装串口驱动,请在安装串口驱动前确保你的microbit连着电脑
点击右上角的小齿轮,之后在弹出对话框下侧点击Microbit COM 安装驱动

安装过程点确认并让它自动完成就好了。
驱动安装成功可以在连接下拉框看到Microbit多出来一个串口连接选项,这个是用来跟Microbit实时通讯用的。
请记住烧写固件还是使用microbit的虚拟u盘,如果不使用串口通讯功能则并不影响使用。

接下来我们让Microbit的5x5矩阵面板显示我们第一个图形
在左侧“事件”菜单找到绿旗帜模块,将它拖到工作区。这是所有程序开始的入口。

之后在Microbit菜单找到显示图形,将它也拖到工作区,并接在绿旗帜模块下面,他们会自动吸附并组合成一个程序流程。

在舞台中应该可以看到这样的代码块

之后点击右上角的“舞台”和“代码”切换开关让kittenblock进入代码模式,我们可以看到左边的图形块已经翻译成python的程序了。

之后点击代码串口的“下载”,kittenblock会自动寻找microbit的u盘盘符并下载,静静等待下载完成就好了。
部分程序可能需要按一下Microbit背后的复位按钮才能正常启动,如果发现有不对劲的时候按一下复位按钮可以解决大部分问题。
第一个程序结果如下图

下载出错会有提示,可以到我们qq群(568084773)求助。
如果大家喜欢上图那个萌萌的硅胶保护套可以光顾我们网店
小喵家@Taobao
https://kittenbot.taobao.com/shop/view_shop.htm?tracelog=twddp&user_number_id=2830157417
它可以防止各种物理碰撞导致的零件损坏,也能防止人体静电造成的芯片击穿,还让led矩阵屏的灯变得更加柔和和平均方便观看~
新品热卖中不来看看吗(点图查看详情)▼

1、定金支付时间:10.21 00:00:00——11.10 21:59:59
2、尾款支付时间:11.11 01:00:00——11.11 23:59:59
3、在10.21 00:00:00后即可付定金购买,在11.11 02:00:00后付尾款即可
4、预售产品优惠吗?能享受双11当天的跨店满减和优惠券吗?
5、当然优惠!可以享受跨店满减和优惠券!并且优先发货!价格保价双11
举个栗子:商品预售价格1000元,其中定金200元。您有1张店铺优惠券(满1000元减100元);跨店满减,满200元减20元。您支付尾款时,店铺优惠券以预售价1000元为计算门槛,可以使用店铺优惠券。跨店满减也以预售价1000元为计算门槛,可以使用跨店满减。故尾款需支付1000(预售价)-200(定金)-100(店铺优惠券)-20*5(跨店满减)=600元。
风语喵
【KittenBot小喵科技】
https://m.tb.cn/h.eKrzjrC?sm=f5d6fa
点击链接,再选择浏览器咑閞;或椱ァ製这段描述¥XoVEYqtlhCD¥后到
◇綯℡寳
福利远远没有结束~
人工智能教程系列
机器学习教程系列
机器学习5(轻量TensorFlow)教程系列
物联网教程系列
物联网系列暂时完结
kittenblock软件教程更新
系列一:kittenblock学习指南教程
系列二:下载与安装

小喵科技QQ二群:444193538
小喵科技论坛:https://bbs.kittenbot.cn/forum.php
哔哩哔哩教程:https://space.bilibili.com/25299911
新浪微博@KittenBot小喵科技
微信公众号:KittenBot
官网:https://www.kittenbot.cn/

