1 python基础
看的一本书:深度学习之PyTorch实战计算机视觉。怕以后找不到,所以先放在这里。
列表 []
list1 = list2;
元组 ()
元组内的元素不能重新赋值。也被成为只读列表
字典 {}
dict_info={"name":"tang", "num":7227, "city":"GL"}
算数运算符 a=5,b=2
/ :相除运算 a/b=2.5
%: 取模运算 a%b=1
** :求幂运算 a**b=25
// :取整运算 a//b=2
布尔运算符
and,or,not
成员运算符 in
list1 = ["i","am","super","man"]
a = "super"
print(a in list1)
运行结果:True
身份运算符 is,is not
is:两个变量是否属于一个对象,即内存地址是否一样
==:仅仅比较两个变量的值是否相等
Python中的类
创建: class
类变量:在创建的类中定义的一些变量,类变量在所有实例之间是共享的,同时内部类和外部类也可以访问。
__init__():类的初始化方法,创建类的实例时会调用
self:代表类的实例,在定义类的方法时必须要有,但是在调用时不必传入参数。
class Student: studentCount =0 def __init__(self, name, age): self.name = name self.age = age studentCount += 1 def dis_student(self): print("studentName:", self.name, "studentAge:", self.age) student1 = Student("Tang", "20")
student1.dis_student()
输出:
studentName:Tang studentAge:20
Numpy
import numpy as np
多维数组
np.arrange(2000) 创建有2000个元素的数组,从0到1999
np.array([[1,2,3],[4,5,6]])
np.ones([2,3])创建2行3列全为1的元素
np.zeros([2,3])创建2行3列全为0的元素
np.empty([2,3])随机初始化
a = np.ones([2,3])
a.ndim #2,数组维度
a.shape #(2,3),输出形状
a.size #6,元素个数
a.dtype #返回数组的数据类型
a.itemsize #返回数组中每个元素的字节大小
np,matrix搭建矩阵
多维数组的基本操作
a = np.array([[1,2,3],[4,5,6]])
a.min(axis=0) #axis=0针对数组的列,求最小值,axis=1针对数组的行
a.max(axis=0) #axis=0针对数组的列,求最大值
a.sum(axis=0) #axis=0针对数组的列,求总和
a.exp #对数组中的所有元素进行指数运算
a.sqrt #对数组中的所有元素进行平方根运算
a.square #对数组中的所有元素进行平方运算
随机数组
seed :随机因子,在随机数生成器的随机因子被确定后,无论我们运行多少次随机程序,最后生成的数字都是一样的,有利于结果的复现 np.random.seed(22)
rand: 生成一个在[0,1)范围内满足均匀分布的随机样本数。 np.random.rand(2,3)
randn:生成一个满足均值是0,方差是1的正态分布随机样本数 np.random.randn(2,3)
randint: 在给定范围内生成类型为整数的随机样本数
binomial:生成一个维度指定而且满足二项分布的随机样本数
beta:生成一个维度指定而且满足beta分布的随机样本数
normal:生成一个维度指定而且满足高斯正态分布的随机样本数
索引,切片,迭代
print(a[:5]) 输出数组的前5个元素
a = np.array([[1,2,3]
[4,5,6]
[7,8,9]])
print(a[0:2, 1:3])
输出:
[[2,3]
[5,6]]
a是多维数组,a.flat是将其进行扁平化处理,变成一维数组。