思科网络技术学院

实验:使用 Blockly 编写 Python 脚本

拓扑

目标

  • 从 PL-App 访问官方课程材料
  • 创建新的可视化编程应用
  • 使用 Blockly 创建 Python 脚本

背景/场景

编程的语法有时会妨碍逻辑。Blockly 提供一种图形化方式用于开发程序,无需担心特定语言的细节。

所需资源

  • 接入互联网的 PC
  • 采用 DHCP 与互联网建立的以太网连接,没有流量过滤
  • 已针对 PL-App 访问进行配置和映像的 Raspberry Pi

任务 1:了解 Blockly

步骤 1 创建可视化 (Blockly) 编程单元格。

a.. 输入下面的代码单元格,并将其从默认 Python 代码单元格转换为可视化编程单元格,方法是单击工具栏中的 Blockly 图标带 Blockly 的 Chestnut 工具栏

在  [ ] 中:
# turn this cell into a Visual Programming cell by clicking on the Blockly icon in the toolbar

步骤 3:使用 Blockly 创建程序

  1. 现在,代码单元格支持使用 Blockly 进行可视化编程。从“程序>文本”菜单中将新的打印块和文本块添加到画布上。 Blockly 界面

  2. 文本块连接至打印块。将以下文本添加到文本块:此程序将按照字母顺序排列两个单词。 Blockly 打印文本

  3. 选择要阻止的程序>变量>将项目设置为块。 blockly_set_item

  4. 将该块放在屏幕上的“打印”块下面。 blockly3

  5. 从“程序>文本”菜单中,选择提示输入文本消息块并将其拖放到画布上,然后将其连接到现有的设置项目块。将提示输入文本消息块的文本部分更改为 What is the first word? blockly_prompt

  6. 将 set to 变量名称更改为 Word1blockly_rename_item

  7. 右击 set to 块中的红色区域,然后选择“复制”。将新块放置在之前的 set to 块的正下方。 blockly_duplicate

  8. 使用底部 set to 块中的 Word1 旁边的箭头,选择新建变量…,然后输入 Word2 作为新变量名称。

    注意:使用“重命名变量...”选项将两个 set to 块中的变量更改为 Word2,如下所示。这不是您想要的结果。 blockly_rename2

  9. 选择程序>逻辑> if-do 块并将其插入到前三个块之下。

  10. 选择程序>逻辑> equal 块并将其添加到 if-do 块后面。 blockly_if_equal

  11. 选择程序>变量> Word1,并将其插入到 equal 块中的第一个变量位置。选择程序>变量> Word2,并将其插入到 equal 块的第二个变量位置。 blockly_variables

  12. 将等号改为小于号 blockly_if_cont

  13. 在画布上,从“程序>文本”菜单中将两个打印块添加到 if 块中。 blockly_prints

  14. 将变量 Word1Word2 添加到打印块中。 blockly_prints_variables

  15. 用 if 块顶部的星号选择 else 语句,并将其拖放到 if 图标的右侧。 blockly_if_else

  16. 使用鼠标右键复制“在屏幕上打印”语句,并以相反的顺序将它们放置在其他区域。

  17. 完整的项目应与下述程序相似。如果不相似,请进行相应更改。 blockly_complete

  18. 使用屏幕右侧的生成代码检查 Python 源代码。 blockly_code

步骤 4:运行应用。

  1. 在代码单元格中,点击单元格左上角的播放按钮。系统将在 Raspberry Pi 上执行 Python 代码,并通过此笔记本页面处理输入和输出。 “播放”按钮

思考

如果将 WordSorter 程序中的小于号改为大于号,系统将会输出什么?

© 2017 思科和/或其附属公司。版权所有。本文档所含内容为思科公开发布的信息。