3 - 代码编程
3.1 - 界面说明
-
①菜单栏:
- **项目:**对整个项目文件sb3的操作(包括其他模式),包括新建、打开、另存、最近编辑、缓存列表。
- **教程:**包含官方文档、官方论坛、视频教程、示例程序。
-
②编辑模式切换:
- 模块:Python的图形化编程界面。
- 代码:Python的代码编程界面。
-
**③代码编辑区:**编写代码的区域,可打开多个文件,双击右边文件目录中的文件可以在这里打开。
-
**④终端信息输出区:**Python运行的输出信息、错误信息、REPL交互等操作。
-
⑤快捷工具区:
- **保存按钮:**保存当前文件,注意不是保存整个项目文件(sb3文件)。
- **运行按钮:**当打开的文件为py文件时,点击可以运行py文件,运行时点击可以停止运行。
- **库管理按钮:**可打开Python库管理界面,可以加载、更新、删除Python库,可加载推荐库或使用PIP安装,可切换不同的源服务器。
- **图形区开关:**可开关代码界面左侧积木区,拖动积木区的积木到代码编辑区可直接生成对应代码,方便快速编程使用。
- **文件系统开关:**可开关文件系统,方便电脑界面较小时隐藏文件目录界面,推荐常开。
-
**⑥文件系统:**可开关文件系统区。
- **项目中的文件:**为整个sb3文件中包含的文件,可以包含py文件或其他资源文件例如mp3文件,新建项目将清空,文件可以右键导出到电脑其他目录。
- 电脑中的文件:可打开电脑中的多个文件夹,方便将代码导入到项目中或直接预览文件,注意这里的代码不会被保存到sb3项目中。
3.2 - 终端交互功能示例—— REPL
3.3 - 基础代码编辑功能示例 —— hello world!(print)
- 切换到代码编程,在项目中的文件处新建名为main.py的文件,双击打开,注意文件名后缀要用英文的点.
- 编写代码,并运行,即可在终端看到输出的信息。
print("hello world!")
3.4 - 内置库编程功能示例 —— 海龟绘图(turtle)
- 输入如下代码并运行,即可控制小海龟绘图。
import turtle
myTurtle = turtle.Turtle()
myTurtle.shape("turtle")
myTurtle.forward(50)
myTurtle.left(45)
myTurtle.forward(50)
turtle.exitonclick() #保持窗口不自动关闭,点击退出
3.5 - 第三方库加载示例 —— 界面GUI(easygui)
- 编写代码并运行,会提示没有easygui库,因此我们需要打开库管理加载这个库。
import easygui
result = easygui.buttonbox("请选择一个按钮点击",choices = ['1','2'])
easygui.msgbox("你选择了"+result)
- 可以在推荐库列表一键安装,或者在PIP模式中手动输入库名称安装。
注意:首次打开需要初始化PIP安装工具,请不要关闭软件耐心等待几分钟,可切换库列表页面,等待列表从空列表到有项目出现即为初始化成功,若无法成功可以查看本文最后常见问题。
- 等待库加载完成后关闭库管理页面,再次运行代码,即可看到效果:
3.6 - 硬件控制示例 —— (pinpong)
Mind+中三种模式均可以控制硬件,其中Python模式运行于电脑上,因此使用可以于硬件通信的pinpong库即可控制。
- 以Arduino uno为例,将UNO板连接电脑(驱动安装正常),运行如下代码(取自pinpong官方文档)控制uno板载LED灯闪烁。
# -*- coding: UTF-8 -*-
#实验效果:控制arduino UNO板载LED灯一秒闪烁一次
#接线:使用windows或linux电脑连接一块arduino主控板
import time
from pinpong.board import Board,Pin
Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
#Board("uno","COM36").begin() #windows下指定端口初始化
#Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
#Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
led = Pin(Pin.D13, Pin.OUT) #引脚初始化为电平输出
while True:
#led.value(1) #输出高电平 方法1
led.write_digital(1) #输出高电平 方法2
print("1") #终端打印信息
time.sleep(1) #等待1秒 保持状态
#led.value(0) #输出低电平 方法1
led.write_digital(0) #输出低电平 方法2
print("0") #终端打印信息
time.sleep(1) #等待1秒 保持状态
3.7 《Python入门系列教程》
3.8 Python语法
Python是一门广泛流行的语言,有大量的基础语法教程,你可以使用Mind+作为编辑器进行学习。
- 参考教程1:菜鸟教程-Python3
- 参考教程2:Python官方文档
3.9 应用教程
学习导引
如果你没有编程基础 | 可以从图形化模式开始 | 点击:【Python模块模式】 |
如果你想直接学习代码编程 | 可以从代码模式开始 | 点击:【Python代码模式】 |
如果你使用遇到了问题 | 想解决问题 | 点击:【Python常见问题】 |