📝本文介绍
本文为作者拜读鸢尾花书籍《编程不难》后所做的笔记,整理成文章,以供回顾
👋作者简介:一个正在积极探索的本科生
📱联系方式:943641266(QQ)
🚪Github地址:https://github.com/sankexilianhua
🔑Gitee地址:https://gitee.com/Java_Ryson
由于本人的知识所限,如果文章有问题,欢迎大家联系并指出,博主会在第一时间修正。
文章目录
📕1. 安装Anaconda
mac:https://docs.anaconda.com/anaconda/install/mac-os/
window:在 Anaconda 官网 (https://www.anaconda.com/) 下载对应版本即可
📘2. JupyterLab
JupyterLab 集合“浏览器 + 编程 + 文档 + 绘图 + 多媒体 + 发布”众多功能与一身。
📖2.1 组成
cell
在 JupyterLab 中,Cell (单元格) 是指一个包含代码或文本的矩形区域,它是用户编写和执行代码、编写文本和渲染Markdown 的基本单位。Cell 可以包含多种类型的内容,包括代码、Markdown、LaTeX 公式等。JupyterLab 中的 Cell 可以通过交互式的方式进行编辑和执行。
kernel
JupyterLab 中,内核 (kernel) 是指与特定编程语言交互的后台进程,它负责编译和执行用户在 JupyterLab 中编写的代码,并返回执行结果。内核与 JupyterLab 之间通过一种称为“Jupyter 协议”的通信协议进行交互。打开一个新的 notebook 或console 时,JupyterLab 会自动启动一个内核,这个内核将与该 notebook 或 console 中编写的代码进行交互。内核还可以保存笔记本中的变量和状态,使得大家可以在多个代码单元格之间共享变量和状态。
📖2.2 快捷键
JupyterLab 的快捷键分成两种状态:a) 编辑模式;b) 命令模式。
编辑模式快捷键:
| 快捷键 | 功能 |
|---|---|
| esc / ctrl+M | 进入命令模式 |
| ctrl+S | 保存 |
| shift+enter | 执行+跳转 |
| ctrl+enter | 执行 |
| alt+enter | 执行+创建cell |
| ctrl + shift + - | 分割 |
| ctrl + / | 注释/撤销注释 |
| ctrl + [ | 向右缩进 |
| ctrl + ] | 向左缩进 |
| ctrl + A | 全选 |
| ctrl + Z | 撤销 |
| ctrl + shift + Z | 重做(撤销撤销) |
| ctrl + c | 复制 |
| ctrl + x | 剪切 |
| ctrl + v | 粘贴 |
| ctrl + f | 查询 |
| home | 跳到某行开头 |
| end | 跳到某行结尾 |
| ctrl + home | 跳到多行cell第一行开头 |
| ctrl + end | 跳到多行cell最后一行结尾 |
| tab | 代码补齐 |
| shift + tab | 对键入的函数提供帮助文档 |
| ctrl + B | 展开/关闭左侧sidebar |
命令模式快捷键:
| 快捷键 | 功能 |
|---|---|
| esc | 进入命令模式 |
| esc -> m | 代码转文本 |
| esc -> y | 文本转代码 |
| enter | 进入编辑模式 |
| esc->a | 上方插入 |
| esc->b | 下方插入 |
| esc->d->d | 删除 |
| esc->0->0 | 重启kernel |
| esc->ctrl + b | 展开/关闭左侧sidebar |
| esc->ctrl + a | 选中所有cells |
| esc->shift + ↑ | 选中当前和上方cell |
| esc-> shift + ↓ | 选中当前和下方cell |
| shift + m | 合并 |
| shift + enter | 执行+跳转 |
| ctrl + enter | 执行 |
| alt + enter | 执行+创建 |
| esc->1 | 一级标题 |
| esc->2 | 二级标题 |
| esc->3 | 三级标题 |
📙3. python语法
📖3.1 关键字
这里挑选几个个人觉得特殊的关键字,不全列出来。
| 关键字 | 介绍 |
|---|---|
| complex | 复数 |
| condition | 条件 |
| def | 定义函数 |
| elif | 等同于else if |
| except | 捕获异常 |
| lambda | 定义一个匿名函数 |
| pass | 占位符,跳过 |
| raise | 引发异常 |
| yield | 用于生成器函数,暂停函数执行并返回一个值 |
📖3.2 注释
单行注释:#
多行注释:‘’‘/”“”(三引号)
📖 3.3 缩进
缩进是指在代码行前面留出的空格 (space) 或制表符 (tab),它们用于表示代码块的开始和结束。
缩进情况:
- 在 if … elif … else … 语句中,它们所控制的代码块需要缩进,以表示它们属于条件语句。
- 在 for、while 等循环语句中,循环体内的代码块需要缩进,以表示它们属于循环语句。
- 在函数定义时,函数体内的代码块需要缩进,以表示该代码块属于函数体。
📖 3.4 变量
变量 (variable) 是用于存储数据值的标识符。
- Python 会根据所赋予的值自动确定其类型
- 动态类型语言,无需显式指定变量类型
- 静态类型语言则需要指定,并且编译器会检测是否正确使用
命名规则
-
变量名必须是一个合法的标识符,即由字母、数字和下划线组成,且不能以数字开头。例如,x、my_var、var_1 等都是合法的标识符。注意,变量名不能以数字开头,比如1_variable 作为变量名不合法。
-
变量名区分大小写。例如,my_var 和 My_var 是不同的变量名。
-
变量名应该具有描述性,能够清晰地表达其所代表的内容。例如,name 可以代表人名,age可以代表年龄等。
-
变量名应该尽量简洁明了,但不要过于简短或过于复杂。避免使用单个字母或缩写作为变量名,除非上下文明确。
-
变量名不应该与 Python 中的保留函数 (关键字) 重名,否则会导致语法错误。例如,不能使用if、else、while 等关键字作为变量名。
-
在特定的上下文中,可以使用特定的命名约定。例如,类名应该使用驼峰命名法(camelCase),函数名和变量名应该使用下划线分隔法 (snake_case) 等。
命名法
- 驼峰命名(每个单词首字母大写)
- 小驼峰:首字母小写
- 大驼峰:首字母大写
- 蛇形命名:单词之间使用下划线分隔
📖 3.5 导包
-
Python 包是一组相关的模块和函数的集合。
-
Python 中有很多常用的包,包括数据处理和可视化、机器学习和深度学习、网络编程、Web 开发等。
-
可以直接使用import来导入包,也可以使用from…import
- 导入后可以使用as来起别名
📗4.Python数据类型
📖4.1 数据类型
| 数据类型 | type | 特点 |
|---|---|---|
| 数字Number | int float complex | 整数,浮点数,复数等 |
| 字符串String | str | 字符序列 |
| 列表List | list | 有序元素,可以修改 |
| 元组Tuple | tuple | 有序元素,不可修改 |
| 集合Set | set | 无序元素,不允许重复 |
| 字典Dictionary | dict | 键值对,必须唯一 |
| 布尔Boolean | bool | True和False |
| None类型 | NoneType | 空值或缺失值 |
📖4.2 类型转换与特殊值
- 使用数据type()来进行对应的转换。例:int(x)
- 一些特殊数值如:Π,e等,可以通过导入math包来使用
📖4.3字符串
-
单引号,双引号,三引号都可以用来创建字符串(三引号多用于多行字符串的创建)
-
单字符也是字符串
-
可以通过索引来访问指定位置的字符,正向从0开始,反向从-1开始(-1标识最后一个字符)
-
切片是指从字符串中提取出一部分子字符串。语法为string[start:end],是一个左闭右开区间,切片还可以指定步长 (step),用于跳过指定数量的字符。语法为string[start: end:step]。
-
复制字符串可以采用 string_name[:] 实现
-
索引和切片操作不会改变原始字符串,而是返回一个新的字符串。
一些字符串api可以在需要使用时再查询即可。
📖4.4 列表
- python中列表可以存储不同类型的元素
api:
len()
enumerate() #将数组等组合成一个索引,第二个参数可要可不要,用于指示开始下标
reverse()
insert()
append()
del ...
'字符'_join
等
其余一些api,可在使用时直接查询
- 视图:直接使用等号(=)赋值,是非拷贝方法,修改哪个列表都会影响到另一个列表,即共享同一个地址。
- copy(),浅拷贝,只对list的第一层元素完成拷贝,深层元素仍然共享
- copy.deepcopy(),深拷贝,创建一个完全独立的列表对象,适用于嵌套列表
📖4.5 其他数据类型
元组
元组 (tuple) 是一种不可变的序列类型,用圆括号 () 来表示。元组一旦创建就不能被修改,这意味着你不能添加或删除其中的元素。
集合
在 Python 中,集合 (set) 是一种无序的、可变的数据类型,可以用来存储多个不同的元素。使用花括号 {} 或者 set() 函数创建集合,或者使用一组元素来初始化一个集合。
| api | 作用 |
|---|---|
| add | 添加单个元素 |
| update | 添加多个元素 |
| remove | 删除元素(删除不存在元素会引发KeyError异常) |
| discard | 删除元素,不会引发异常 |
| & | 交集 |
| | | 并集 |
| - | 差集 |
字典
在 Python 中,字典是一种无序的键值对 (key-value pair) 集合。
可以使用大括号 {} 或者 dict() 函数创建字典,键 (key) 值 (value) 对之间用冒号 : 分隔。
# 使用大括号创建字典
person = {
'name': 'James', 'age': 18, 'gender':
'male'}
# 使用 dict() 函数创建字典
fruits = dict(apple=3, banana=2, cherry=5)
📖4.6 矩阵
-
一个 n × D (n by capital D) 矩阵 X,n 是矩阵行数 (number of rows in the matrix),D 是矩阵列数 (number of columns in the matrix)。
-
从统计数据角度,n 是样本个数,D 是样本数据特征数。
-
行向量 (row vector) 是由一系列数字或符号排列成的一行序列。列向量 (column vector) 是由一系列数字或符号排列成的一列序列。
-
矩阵可以视作由一系列行向量、列向量构造而成。
📕 5. Pyton常见运算
📖5.1 运算符
► 算术运算符:用于数学运算,例如加法 (+)、减法 (-)、乘法 (*)、除法 (/)、取余数(%)、乘幂 (**) 等。
► 比较运算符:用于比较两个值之间的关系,例如等于 (==)、不等于 (!=)、大于 (>)、小于 (<)、大于等于


3633

被折叠的 条评论
为什么被折叠?



