ROS2机器人少年创客营:Python第一课

ROS2机器人少年创客营:Python第一课

课程名称

你好Python------与环境的第一次对话

课程目标
  • 环境搭建:成功安装Python解释器,并认识代码编辑器(VS Code或Thonny)。
  • 掌握输入输出:理解程序是如何接收指令并给出反馈的(I/O)。
  • 理解变量概念:学会用"贴标签的盒子"来理解变量,能够存储和处理数据。
  • 初识数据类型:区分数字(整数/浮点数)和字符串(文本)。
核心内容

程序是如何"跑"起来的?

  • 解释器(Interpreter)
    • 比喻:它是Python的"翻译官"。你写的代码是中文,它负责实时翻译成计算机能听懂的英文。
    • 演示 :在终端输入python,进入交互模式。输入print("Hello"),立刻看到结果。告诉学生:"看,翻译官就在听你说话!"
  • 代码编辑器(IDE)
    • 比喻:它是程序员的"高级记事本"。
    • 工具:推荐Thonny(专为初学者设计,能看到变量变化)或VS Code(工业界标准)。
    • 操作 :新建文件 -> 写代码 -> 保存为.py -> 运行。

第一句咒语:print()

  • 功能:让计算机"说话"或"显示"内容。
  • 语法print("你好,世界")
  • 细节
    • 括号():表示这是一个动作(函数)。
    • 引号"":表示里面是文本(字符串),计算机不会去理解引号里的意思,只会原样打印。
    • 易错点:忘记加引号会报错(SyntaxError),忘记加括号没反应。

数据的盒子:变量与赋值

  • 概念:变量就是内存里的一个"盒子",我们在盒子上贴个标签(变量名),往里面装东西(数据)。
  • 赋值操作name = "创客小明"
    • 解读:这不是数学等式,这是动作!意思是"把右边的东西,放进左边的盒子里"。
  • 命名规则
    • 标签要看得懂(用英文或拼音,如robot_speed)。
    • 不能以数字开头,不能有空格。

数据的种类:数字与文字

  • 字符串(String)
    • 用引号包起来的一切。比如"123"(这是文本,不能做加法)。
    • 用途:名字、地址、提示信息。
  • 数字(Number)
    • 整数(int)10, 100, -5
    • 浮点数(float)3.14, 0.01
    • 用途:速度、距离、电量。
  • 互动
    • print("10" + "10") 结果是 1010(拼起来)。
    • print(10 + 10) 结果是 20(算加法)。
实践环节

任务:制作"机器人身份证"

  • 场景:你刚刚制造了一个机器人,需要给它录入系统。

  • 步骤

    1. 定义变量
      • robot_name = "铁甲小宝"(字符串)
      • robot_age = 1(整数,刚造出来)
      • robot_battery = 98.5(浮点数,百分比)
    2. 打印信息
      • 使用print函数,把上面的变量打印出来。
      • 尝试组合打印:print("机器人", robot_name, "电量:", robot_battery)
    3. 简单计算
      • 机器人充电了5%,计算新电量:robot_battery = robot_battery + 5
      • 打印新的电量。
  • 代码示例

    python 复制代码
    # 这是我的第一个Python程序
    name = "铁甲小宝"
    battery = 98.5
    
    print("系统启动...")
    print("机器人名字:", name)
    print("当前电量:", battery)
    
    # 充电模拟
    battery = battery + 5.0
    print("充电完成!新电量:", battery)
课后总结

今天我们和计算机建立了第一次"对话"。我们学会了用print让它说话,用变量给它记忆。记住,编程就是把数据装进盒子里,然后指挥计算机去处理这些盒子。

课后思考

如果我把robot_speed = 10,然后执行print(robot_speed + "公里"),程序会报错吗?为什么?(引导思考:数字和文字能不能直接相加?)

相关推荐
吃西瓜的年年2 小时前
react(二)useEffect 和 useRef
前端·react.js·前端框架
RDCJM2 小时前
Spring Boot项目接收前端参数的11种方式
前端·spring boot·后端
LZQ <=小氣鬼=>2 小时前
React 插槽(Slot)
前端·javascript·react.js
前端老石人2 小时前
HTML 内容分组终极指南:从语义化标签到现代 Web 结构
前端·html
大转转FE2 小时前
转转前端周刊第191期: 淘宝闪购 AI Agent 的秒级响应记忆系统
前端·人工智能
源码之家2 小时前
计算机毕业设计:汽车销售数据采集分析系统 Flask框架 requests爬虫 可视化 数据分析 大数据 机器学习 大模型(建议收藏)✅
大数据·爬虫·python·信息可视化·flask·汽车·课程设计
怪我冷i2 小时前
在win11进行Rust Web 开发,采用Salvo框架
开发语言·前端·rust
candyTong2 小时前
Claude Code 是怎么跑起来的:从 Agent Loop 理解代理循环实现
前端·后端·ai编程
TG_yunshuguoji2 小时前
阿里云代理商:如何用阿里云AppFlow 为飞书机器人配置定时任务?
人工智能·阿里云·机器人·云计算·飞书