1、python数组相加是简单的合并操作? 回答:是的,但是在numpy中指的是矩阵的运算。
list1 = [1, 2, 3, 5] print([1] + list1) # [1, 1, 2, 3, 5] # numpy中矩阵的相加 import numpy as np list2 = np.array([1, 2, 3, 5]) print([1] + list2) # [2 3 4 6]
2、random中一些函数的使用,random.sample() — 用于截取列表中指定长度的随机数,但是不会改变原来数组的样子。
在numpy当中也是包含random函数的
import random import numpy as np list1 = [1, 2, 3, 5, 6] print(random.sample(list1, 1)) # [6] print(random.sample(list1, 2)) # [5, 6] print(random.sample(list1, 4)) # [2, 1, 6, 5] print(list1)
random.randint() --是用来生成生成列表的随机数的,可以是数字也可以是数组
import numpy as np a = np.random.randint(1, 10) b = np.random.randint(1, 10, 1) # 最后一个数字表示维度 print(a) # 7 print(b) # [6]
random.random()– 这个里面是没有参数的,就是随机生成一个小数的操作。
import random c = random.random() print(c) # 0.7908201446976164
random.uniform(x, y) – 方法将随机生成一个实数,范围在[x, y] 之间
e = random.uniform(0, 1) print(e) # 0.6845445985915111
3、右移运算符的使用,经常在二分查找中使用
low = 2 high = 3 mid = (low + high) >> 1 print(mid) # 2 生成的都是整数,类似于(low + high)/ 2向下取整
4、python当中简单的切片操作
[::1] <==> [a: b :1] 这样来理解即可,前面两个数字表示范围,后
一个表示步长
# 定义一个数组来模拟切片操作 list = [1, 2, 3, 4, 5, 6] print(list[::1]) # [1, 2, 3, 4, 5, 6] # 最后一位是步长的话表示的是对数组的逆转 # [a:b:-1] 本来写法应该是这样的,没有写a,b表示全部 print(list[::-1]) print(list[1:5:2]) # 后面那一个步长是取值不到的 # 在切片操作中数组中最后一个数值对应的下标是-1,然后往前-2,-3,... l4 = [3,5,1,6,2] e4 = l4[-4:-2] print(e4) # [5, 1]
5、二维数组的测试,转置 + 行列长度的test
# 二维数组的一系列性质测试
import numpy as np
a = np.array([[1, 2, 3, 4],
[4, 5, 6, 7],
[7, 8, 9, 0],
[7, 8, 9, 0],
[7, 8, 9, 0]])
print(a)
# 对a矩阵进行转置?np_array.transpose()进行转置操作
# 转置 -- 行变成列
print(a.transpose())
# 对于二维矩阵长度的测试解决
print(len(a)) # 5, 没有具体指出是行还是列的话,就是行的长度
print(len(a[0])) # 4 表示的是从上往下面数第一行有多少个元素
print(len(a[1])) # 4 表示第二行一共有多少个元素
# 想要表示列的话,逗号前面取所有行,逗号后面的数字表示列
print(len(a[:,0])) # 5 表示第一列有多少个元素
6、求取一个数组中的最大最小值,还是使用经典函数max和min
# 求取一个数组中的最大或者是最小值, 使用max() 或者是 min() ? list = [1, 2, 34, 3, 5, 6, 7] # 很明显使用max以及min函数就可以进行求解 print(max(list)) # 34 print(min(list)) # 1
一维数组是这样,二维数组也是一样的,也可以使用max或者是min求取一行/一列中最大或者是最小的元素
import numpy as np
# 在构建数组中间是用逗号隔开
a = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
print(max(a[:, 0])) # 7 -- 第一列中最大的数字



