一、基础语法
1.1 前言
1.1.1 Python简介
-  Python是一门编程语言,Python的作者是Guido van Rossum(龟叔)  
-  Python优点:简单易学  
-  Python与嵌入式、集成电路行业 -  强大的库和工具生态系统:Python拥有广泛而强大的库和工具生态系统,涵盖了各种领域的功能和应用,包括串口通信、网络通信、数据处理、图像处理等。这些库和工具可以极大地简化嵌入式和集成电路开发过程,加快开发速度。更方便的是能直接部署ROS这样的机器人操作系统。 
-  与硬件的集成能力:Python提供了多种与硬件集成的方式,例如通过串口通信、GPIO控制、SPI、I2C等接口。开发者可以使用Python与嵌入式设备进行通信和控制,实现与外部传感器、执行器等硬件的交互。 
-  数据分析和可视化:在嵌入式和集成电路开发过程中,数据分析和可视化是非常重要的环节。Python拥有众多优秀的数据分析和可视化库,例如NumPy、Pandas、Matplotlib等,可以帮助开发者处理和分析采集到的数据,并进行可视化展示。 
 
-  
1.1.2 Python环境搭建
-  环境版本 -  解释器版本:3.9.13 
-  PyCharm版本:pycharm-community-2022.3.3 
 
-  
-  解释器安装  -  解释器版本查看,打开windows终端,输入如下命令  
 
-  
-  PyCharm安装  
-  推荐插件安装 -  CodeiumAI插件 -  Codeium 免费的AI编程助手 - 知乎 
-  因为要和谐上网登陆,加载很慢,如果这个装不了,装下面这个也行  
 
-  
-  缩进提醒 
  
-  
-  Python教程:Python 教程 — Python 3.12.3 文档 
1.1.3 第一个Python程序
-  PyCharm运行Python步骤: -  打开PyCharm(如果已经打开,需要先关闭) -  关闭工程  
 
-  
-  新建工程(项目)  -  选择项目路径(最好提前准备好) 
-  选择解释器  -  上一步没有解释器,确保已经安装了,然后操作如下  
 
-  
 
-  
-  新建Python文件: hm_hello.py-  写代码 print('hello abc')-  Python中单引号和双引号效果是一样的  
 
-  
 
-  
-  运行Python代码 
 
-  

1.1.4 PyCharm常用操作
-  文件改名  
-  删除文件  
-  代码分屏显示  
-  打开文件所在的位置 
 
-  解释器相关:这里以3.8举例,其它解释操作一样 -  解释器快速入口 -  在界面的右下角  
 
-  
-  解释器界面  
-  更换解释器,如电脑有多个解释器 
 
-  
 
 
 
1.1.5 常用快捷键
| 快键键 | 说明 | 
|---|---|
| Ctrl + C | 复制 | 
| Ctrl + V | 粘贴 | 
| Ctrl + D | 复制粘贴选定的区域或行 | 
| Ctrl + Y | 删除选定的行 | 
| Ctrl + Alt + L | 代码规范化(格式化) | 
| Ctrl + / | 单行注释 、取消单行注释 | 
| Shift + 回车 | 快速换行 | 
| tab | 缩进 | 
| Shift+tab | 反缩进 | 
 
 
 
1.2 注释
-  单行注释: -  #开头,#后空一格后跟上注释的内容
 
-  
-  多行注释: -  多行注释以 """开头,"""结尾。(或以'''开头,'''结尾)
 
-  
1.3 变量、标识符
1.3.1变量
1.3.2 标识符和命名规范
-  标识符是用户编程时使用的名字, 用于给变量、 函数、 类等命名 
-  原则: -  由数字, 字母, 下划线组成 
-  不能使用数字开头 
-  不能使用Python内置关键字 
-  严格区分大小写 
-  不建议使用中文 
 
-  
-  关键字(这个不用记):Python已经占用的名字,用户起名不能和关键字重名  
-  命名规范(习惯) -  原则:见名知意 
-  风格: -  下划线命名法: 
-  大驼峰命名法: 
-  小驼峰命名法:  
 
-  
 
-  
1.4 数据类型
-  说明 -  complex不常用,不作为学习内容 
-  布尔类型,非0就是True 
-  特殊类型:None(空类型:NoneType) 
 
-  
-  可以通过 type()函数获取变量类型 
 
1.5 输出和输入
1.5.1 程序的输出
 
1.5.2 程序的输入

1.5.3 输出和输入练习
 
1.6 运算符
-  运算符就是在各种运算中起到特定作用的符号 
-  一般情况下, 用哪个运算符, 现查现用即可 
-  算术运算符  
-  比较运算符  
-  赋值运算符  
-  逻辑运算符 
 
 
 
二、控制流程

-  顺序 —— 从上向下,顺序执行代码 
-  分支 —— 根据条件判断,决定执行代码的分支 
-  循环 —— 让 特定代码 重复 执行 
2.1 判断
2.1.1 if语句
 
2.1.2 if-else语句
 
2.1.3 if-elif-else语句
 
2.1.4 if的嵌套
 
2.1.5 判断案例:猜拳游戏
 
2.2 循环
2.2.1 while循环
2.2.1.1 while循环语法
 
2.2.1.2 死循环
 
2.2.1.3 while循环嵌套
 
2.2.1.4 while循环案例:99乘法表
 
2.2.2 for循环
2.2.2.1 for循环语法
 
2.2.2.2 for循环控制循环次数
 
2.2.2.3 for循环案例:水仙花数
 
2.2.3 循环的跳转
break和continue是专门在循环中使用的关键字
-  break:某一条件满足时,不再执行循环体中后续代码,并退出循环 
-  continue:某一条件满足时,不再执行本次循环体中后续代码,但进入下一次循环判断 
2.2.3.1 break
 
2.2.2.2 continue
 
2.2.4 循环中的else
 
2.2.5 循环案例:密码合法判断
 
三、容器类型(上)
-  重点学习容器的定义 
-  常用操作的建议 -  跟着课堂把代码写一遍即可,混个脸熟,后面现用现查 
-  增、删、改、查:重点掌握 查 -  字符串、元组:只能查,不能改 
 
-  
 
-  
3.1 列表list
3.1.1 列表基本语法
 
3.1.2 列表常用方法介绍

3.1.3 列表嵌套
 
3.1.4 列表案例:办公室分配
 
3.2 元组tuple
3.2.1 元组基本语法
 
3.2.2 元组组包和拆包
 
四、函数基础
-  所谓函数, 就是把具有独立功能的代码块组织为一个小模块, 在需要的时候调用 
-  步骤: -  定义函数 -> 封装代码 
-  调用函数 -> 使用代码 
 
-  
-  作用: 对具备相同逻辑的代码进行封装,调高代码的编写效率,实现对代码的重用 
4.1 函数基本使用
4.1.1 无参无返回值
 
4.1.2 有参无返回值
 
4.1.3 有参有返回值
 
4.1.4 函数返回多个值
 
4.2 局部变量和全局变量
4.2.1 局部变量
 
4.2.2 全局变量
 