Python学习笔记 ver1.0
Python学习笔记 ver1.0
-
在线编程
- https://notebooks.azure.com/
- 安装及路径设置 https://shimo.im/docs/W5pX5mENS20DCquh/read
-
Python01 认识Python
python和相关集成开发环境介绍、jupyter notebook常用快捷键、markdown文本编辑常用操作、基本操作——输入输出 注释 模块导入 赋值-
简介
-
现在主要使用python3.7
-
anaconda是集合
- python解释器
- 三方包
处理不同任务的模块
-
IDE集成开发环境
- jupyter notebook
新手友好,基于浏览器的工具 - spyder
便于变量查看,多用于数据分析 - pycharm
- jupyter notebook
-
-
快捷键及文本输入
-
https://blog.csdn.net/qq_39973546/article/details/79777992
-
-
-
markdown文本编辑
- 标题文本
- 表格
- 标题文本
-
-
基本操作
-
基本输入输出
- 输出字符串和输出数值有区别
- 输出字符串和输出数值有区别
-
多行语句
- \回车 显示多行
- \回车 显示多行
-
Python注释
-
或''' '''
-
-
模块导入
- as 起别名
- as 起别名
-
赋值
-
-
-
-
作业
- 讲解后
-
- 讲解后
-
-
Python02 基础数据类型1
数值类型(整型、浮点型)及运算符、字符串及操作、布尔值、空值、输入-
标量类型
-
数值类型
-
int
- 任意大整数
- 任意大整数
-
float
- 双精度浮点数或科学计数法
- 双精度浮点数或科学计数法
-
-
运算符
-
基本运算
取模 % 幂 ** 整除 // -
比较运算:返回布尔值
-
赋值运算
-
逻辑运算
-
-
-
-
字符串
-
定义
-
常用操作
- 加法 +
- 长度 len()
- 索引 s[0] s[-1]
- 切片 s[start🔚step]
访问开始索引到结束索引减一的元素
开始索引默认不写,从s[0]开始
结束索引默认不写,到最后一位结束
从第一位到最后一位可以默认s[::] - 子串计数 s.count(寻找的子串)
子串不重复查找计数 - 判断开头结尾 s.startswith(判断的开头)
- 查找子串位置 s.find(查找的子串) 返回子串第一次出现所在位置,查找不到-1
- 替换 s.replace(被替换部分,新加入内容) 不影响变量本身
- 字符串分割 s.split(分隔符)
只删除文本两端的空格,字符串中间的空格不去掉 - 转换大小写 s.upper()
- 删除空白 s.strip()
-
-
布尔值
-
空值
-
程序截图
-
-
-
-
input()
不管输入什么,返回的是字符串 -
作业
- 讲解后
-
- 讲解后
-
-
Python03 基础数据类型2
序列通用操作:创建、访问、加法乘法、成员资格
元组:创建后不可修改
列表更多操作:增加、插入、删除、赋值、切片、排序-
容器分类
列表[]:数组。 数据类型相同,可进行增删改查操作 append insert del
元组():数据库的记录。 数据类型可以不同,不能进行增删改
字典{'attribute1':'value1','attribute2':'value2'}:数据表。数据类型可以不同,可以进行增删改,无法排序 update增加 pop删除 in判断是否存在
集合set():字符串('string')-
-
-
序列
每个元素有序号-
列表
-
生成
- 直接生成[ ]
- list( ) 将字符串转换成列表
range(start,end,step)生成连续数列的容器 - 列表中每个元素类型可以不同
-
操作
-
串联 a+b
-
访问 a[0]
-
增加 a.append(元素)
-
插入 a.insert(索引位置,取值)
-
删除 del a[0] / a.pop(索引位置) / a.remove(取值)
-
赋值 a[索引位置序列]=[新赋值序列]
-
切片 list[start🔚step]
与字符串切片相似 倒序 [::-1]-
-
-
成员资格 元素 in 列表 返回布尔值
-
排序 a.sort()/ a.sorted()
sort() 原列表改变
sorted() 原列表不改变
倒序 (,reverse=True) -
程序截图
-
-
-
-
-
元组
固定长度,不可改变的python序列对象
初始化后不能修改
不能赋值、删除、增加等
因为元组的特性,可当成常量使用-
创建
- tuple()
- a=
- a=()
-
访问 a[]
-
加法乘法
-
-
-
序列通用操作
- 索引
- 切片
- 序列相加
- 成员资格
-
-
作业
- 讲解后
-
- 讲解后
-
-
Python04 基础数据类型3&流程控制1
字典:生成、访问、赋值、删除、融合
集合(没有重复相同元素):生成、交并减
判断语句: if if-elif-else-
字典
哈希映射、关联数组-
生成 m= {[key:value],[key:value]}
-
操作
-
访问
- m.keys()
for key in m.keys(): # 遍历字典的键
print('键'+key+ '的值:'+ m[key]); - m.values()
for value in m.values(): # 遍历字典的值
print(value); - m.items()
- m.keys()
-
赋值 m[key]=new value
-
删除 del /pop
同列表 -
融合 m.update
-
-
程序截图
-
-
-
-
集合 set()
不含相同重复元素-
-
生成 s={}
-
交并减 & | -
-
程序截图
-
-
-
-
类型转换
-
查看类型type
-
转换类型 类型()
-
程序截图
-
-
-
-
条件判断
-
if
-
if-else-elif
-
程序截图
-
-
-
-
作业
-
密文密码
-
-
-
-
-
-
Python05 流程控制2
for循环、while循环-
for循环
-
基本语句
-
-
-
在不同数据类型下的使用
-
列表
-
元组
-
字典
-
字符串
-
程序截图
-
-
-
-
与其他函数的配合
-
迭代器range
-
if
-
continune
continue之后语句不执行 -
pass
pass之后的语句依然执行 -
程序截图
-
-
-
-
-
while循环
while循环指定条件和代码,条件false或break退出
for循环更常用-
break
-
程序截图
-
-
-
-
异常
- try-expect
- try-expect-expect x
- try-expect-finally
- try-expect x-else-finally
-
作业
-
-
-
-
Python06 循环嵌套&列表生成
多重嵌套循环、字符串格式化输出、列表生成式-
遍历的数据对象
- enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
-
多循环
-
字符串格式化输出
-
-
-
程序截图
-
-
-
-
列表生成式
pandas中新建列使用,较简便-
表达式 对每个元素 在每个集合中 如果符合条件返回
只能返回一步操作的结果 -
程序截图
-
-
-
-
作业
-
-
-
-
Python07 函数1
内置函数、自定义函数-
函数分类
- 内置函数
- 自定义函数
- 匿名函数
-
内置函数
-
数学函数
-
-
-
字符串处理函数
-
字符串大小写变换
-
-
-
指定输出字符串时的对齐方式
-
-
-
搜索和替换
- 应用:查找敏感词
- 应用:查找敏感词
-
正则表达式
-
字符串判断相关
-
-
-
-
常见报错
- 传入参数数量不对
- 传入参数类型是该函数不能接受的
-
-
程序截图
-
-
-
-
自定义函数
-
定义与返回
-
-
程序截图
-
-
-
-
全局变量与局部变量
一个变量在函数里是局部的,它只在函数内部存在,影响不到函数外 -
参数指定
-
位置参数
位置传参,传入的参数按顺序 -
关键字参数
关键字传参,传入的参数,按名字对应 -
默认参数
必需放最后 -
程序截图
-
-
-
-
实例
-
-
-
-
作业
-
-
-
-
Python08 函数2
匿名函数-
匿名函数
与自定义函数相比更简洁清晰
单条语句简单操作时使用-
lambda
没有实际含义 仅声明匿名函数 -
程序截图
-
-
-
-
过滤函数
-
filter(function,sequence)
过滤序列中不符合条件的部分 得到迭代器
判断序列数据是否满足函数条件 -
程序截图
-
-
-
-
多个序列运算函数
-
map(function,iterable1,iterable2)
一个序列或多个序列的函数映射值 -
程序截图
-
-
-
-
计算器实例
-
程序截图
-
-
-
-
作业
-
-
-
-
Python09 Numpy1 ndarray数组基础
numpy包 数组基础操作-
优点
- 输入更便捷
- 输出性能高
底层用C语言写,效率高
-
导入库
-
-
-
创建数组
创建数组可用array()函数定义实例对象,参数为python 的序列对象
若想定义多维数组,则传递多层嵌套
是同类型数据的集合-
-
-
数组属性
- 维度数 ndim
- 每个维度的维数 shape
- 数据类型 dtype
-
-
特殊数组
- 全零数组
- 全一数组
- 空数组
元素都是接近0的数值 -
-
序列数组
- arange
参数 start,end,number(元素数量) - linspace
与arange区别,linspace取到end,arange取到end-1
参数 start,end,number(元素数量) -
- arange
-
数组索引
索引从0开始,操作与列表相同-
-
-
数组运算
-
-
-
数组拷贝
- 浅拷贝 =
拷贝数组改变,原数组也改变 - 深拷贝 copy
拷贝数组改变,原数组不变 -
- 浅拷贝 =
-
转置
-
-
-
作业
-
-
-
-
Python10 Numpy2
-
快速的元素级数数组函数
-
-
-
条件逻辑转述为数组运算
-
-
-
数组的基本统计方法
-
-
-
随机数生成
-
-
-
数组排序
-
-
-
reshape
-
-
-