16. 附录-不同模式的功能性概述¶
16.1 第一阶段(前4个部分)¶
第一步,可以用点按钮的方式引导Karel
- go ... 向前走一步
- left ... 左转
- right ... 右转
- get ... 拾起一枚宝石
- put ... 放下一枚宝石
16.2 编程模式(5-15部分)¶
在编程模式中,Karel有如下功能:
go ... 向前走一步
left ... 左转
right ... 右转
put ... 放下一枚宝石
get ... 拾起一枚宝石
repeat ... 计数循环(重复给定次数的操作)
if/else ... 条件判断
while ... 条件循环(重复某操作直到满足某条件)
def ... 定义一个新的命令
wall ... 检测机器人前方是否有墙
gem ... 检测机器人正下方是否有宝石
tray ... 检测机器人正下方是否有托盘
empty ... 检测机器人的包里是否没有宝石
home ... 检测机器人是否在家方块
north ... 检测机器人是否面朝北
print ... 打印字符串和变量
gpsx ... 水平方向的GPS坐标
gpsy ... 垂直方向的GPS坐标
- a = 0 ... 创建一个变量 a 并实例化为0
更多实例化方法参考 11.8节
inc(a) ... 增加变量 a 的值一个单位
inc(a,value) ... 增加变量 a 的值 value 个单位
dec(a) ... 减少变量 a 的值一个单位
dec(a,value) ... 减少变量 a 的值 value 个单位
rand ... 随机命令(随机返回 True 或 False)
return ... 返回一个值,在函数中使用
and ... 二元逻辑运算 and
or ... 二元逻辑运算 or
not ... 一元逻辑运算 not
L[] ... 创建空列表 L
len(L) ... 列表 L 的长度
L[i] ... 列表 L 的第 i+1 个元素.注:L[0]是列表的第一个元素
L.append(x) ... 将 x 扩展到列表 L 的结尾
x = L.pop() ... 删除列表 L 的最后一个元素并赋值给变量 x
del L[i] ... 删除列表 L 的第i个元素
for x in L ... 以Python的方式分析列表.
数值和布尔(逻辑)变量
复杂逻辑表达
返回值的函数
列表
递归
17. 进一步学习¶
祝贺你,你已经完成了Karel机器人!希望你喜欢这个课程.如果你希望改进此应用或教材,我们愿意倾听. 如果你有一个新的游戏或Karel的练习,请告知我们:-)
现在你已经为学习下一个编程语言做好了准备!我们建议你学习Python,它是被广泛使用的动态编程语言, 如商业,科学,工程和其他领域.我们同样提供精致的Python课程.
无论如何,我们的团队希望你好运,希望成为你最爱的书签!
你的作者.