到目前为此,我们已经写了一些程序代码,但都只是输出,然而,有时我们也希望板子能处理一些输入,输入输出我们都是针对板子来说的。microbit板子上的两个按键是最显眼的输入,分别是A和B,mPython是可以处理这两个按键的。

microPython库提供了相关的交互方法:

 #检查button_a是否正被按住
button_a.is_pressed()
#检查button_a是否被按下松开
button_a.was_pressed()
#检查button_a被按下的次数
button_a.get_presses() #button_b与button_a类似
button_b.is_pressed()
button_b.was_pressed()
button_b.get_presses()

例子也是相当简单:

from microbit import *
sleep(1000)
display.scroll(str(button_a.get_presses()))

代码暂停1000毫秒,也就是1秒之后,滚动显示按键A被按下的次数。

sleep()函数是暂时代码执行多少毫秒的意思,不是任何对象的方法,但功能上类似

button_a是一个对象,通过它的get_presses方法获得我按键次数。

str()函数把数字转化为字符串,因为display.scroll方法的参数必须是个字符串

第三行有很多层括号,有时像洋葱皮,层叠包围,代码执行,看的时候要从最里面开始,一层一层执行脱去外层的括号。也有点像俄罗斯套娃。

假设你按下了10次A键,代码是这样执行的。

display.scroll(str(button_a.get_presses()))
display.scroll(str(10))
display.scroll("")

看起来很复杂,其实程序很快执行完了。

最新文章

  1. noip2012-day2-t2
  2. php大力力 [041节] 今天没有写日志哈
  3. SKAction
  4. 【2012.1.24更新】不要再在网上搜索eclipse的汉化包了!
  5. 8月9日,PS、计算机基础(预科)
  6. Accord.NET_Naive Bayes Classifier
  7. JAVA入门[12]-JavaBean
  8. CodeForces-749B
  9. Spring Boot 2.x 编写 RESTful API (二) 校验
  10. mitx一大堆统计学知识
  11. 关于webpack使用的一些问题
  12. New需谨慎
  13. lavarel mongo 操作
  14. 复旦高等代数II(16级)每周一题
  15. mysql之 事务prepare 与 commit 阶段分析
  16. JavaScript In OA Framework
  17. 在电脑用Chrome运行安卓apk程序[ARC Welder]
  18. SimpleDateFormat使用详解 <转>
  19. vue.js和angular.js的区别
  20. 253. Meeting Rooms II 需要多少间会议室

热门文章

  1. [快捷键的使用] IntelliJ IDEA 将数据库里面的表转化为对象
  2. JDK相关目录介绍
  3. .NetCore之基础
  4. ES6环境搭配(一)
  5. vue+element省市县的二级联动功能
  6. ECharts将折线变平滑和去掉点的属性(转载)曲线变圆滑
  7. 资深P7架构师详解淘宝服务端高并发分布式架构演进之路
  8. (原+修改)Pip使用国内源安装opencv
  9. JAVA concurrent包下Semaphore、CountDownLatch等用法
  10. JMETER 使用JDBC查找数据作为参数