深度学习就是通过训练数据,训练出一个有效的f。
python基础
break 跳出循环体
contiune 跳出此次循环进入下一层循环
pass 占位符,什么都不做,一般用于空函数防止报错
数据类型
截取是左闭右开
list里面的元素可以修改
元组元素不可以修改,但是它里面的list里面的元素可以修改
set可以用于给list tuple去重
字符串:
- 连接 a+b
- a*3 字符串重复3次
- a[1:4] 切片 左闭右开
4.‘-’.joint(a) - 三引号,所见即所得。单引号和双引号一样
列表:
[ ]
1.索引
2.添加元素 - append()添加一个元素
- a.extend(b) 合并两个列表 或者 a+b
- a.insert(1,") 在1处添加一个元素
3.删除元素 - del a[i]
- a.remove(‘’)
- a.pop(i)
4.切片
语法:[start:stop:step]
step代表切片步长,为负数表示从后往前取;切片区间为[start,stop),包含start但不包含stop
5.排序 - sorted(a) 默认升序
- sorted(a, reverse=True) 降序
** 元组 **
( )
元组只有一个元素时,需要在后面加逗号。
元组不可以修改里面的元素,也不能往里添加新的元素。
13. b=tuple(a) 可把list变成tuple
14. 切片 和list一样
15. 索引 b.cout(4) 返回元素为4的个数 b.index(4) 返回元素为4的索引
16. 拆包和装包
** 字典 **
{ }
17. c.items() 键值对 keys()所有的键 values() 所有的值 返回的都是列表
18. 删除 del(c[key]) pop(key)
python json
python 常用的库
numpy
创建数组
- np.array(list/turple)
- 生成已知大小类型的数组,empty() zeros() ones((2,3),dtype=‘int64’)
- np.arange(10,31,5) 10到31的步长为5的数据
维度、形状 - ndim shape size dtpye
- reshape() 重新定义形状为2行3列
数组的计算 - 大小相等的数组之间的任何算术运算都会运算到元素级,数组与标量的算术运算也会将那个标量值传播到各个元素. + - * /
- 矩阵乘法 np.dot(a,b)
- np.sum(a, axis=1) 1每行求和,0每列求和 max() min() 求数组最值 mean()求数组平均值 argmax argmin 求最值的索引
- a.flatten() 多维变一维
数组的索引与切片
a[1][2] a[1,2] a[1,0:2] 第二行0到1的列
padas
自动把索引相同的进行运算
PIL
图像处理库
from PIL import Image
- 旋转 .rotate(45)
- crop() 剪切
- 缩放 resize()
- 镜像 transpose()
Matplotlib
import matplotlib.pyplot as plt
plt.figure() 生成画布
plt.plot() 绘图
plt.legend() 图例
plt.xlabel()
plt.ylabel()
plt.show()
plt.scatter() 散点图
plt.bar()直方图
import matplotlib.pyplot as plt
import numpy as np
####曲线图
l1, = plt.plot(x,y1,color='red',linewidth=1)
l2, = plt.plot(x,y2,color='blue',linewidth=5)
plt.legend(handles=[l1,l2],labels=['aa','bb'],loc='best') #把图例放在最好的位置
plt.xlabel('x')
plt.ylabel('y')
plt.xlim((0,1)) #x轴只截取一段进行显示
plt.ylim((0,1)) #y轴只截取一段进行显示
plt.show()
###散点图
dots1 =np.random.rand(50)
dots2 =np.random.rand(50)
plt.scatter(dots1,dots2,c='red',alpha=0.5) #c表示颜色,alpha表示透明度
plt.show()
###直方图
x = np.arange(10)
y = 2**x+10
plt.bar(x,y,facecolor='#9999ff',edgecolor='white')
for ax,ay in zip(x,y):
plt.text(ax,ay,'%.1f' % ay,ha='center',va='bottom')
plt.show()
数据增强: numpy+PIL