NumPy 笔记
'''
创建 ndarray
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0
object 数组和嵌套的数列
dtype 数组要还俗的数据类型,可选
copy 对象是否需要复制,可选
order 创建数组的形式,C 为行方向, F 为列方向, A 为任意发那个像(默认)
subok 默认返回一个与基类类型一直的数组
ndmin 指定生成数组的最小维度
'''
import numpy as np
a = np.array([1, 2, 3])
print(a)
a = np.array([[1, 2], [3, 4]])
print(a)
'''
数据类型对象 dtype
numpy.dtype(object, align, copy)
object 要转换为的数据类型对象
align 如果为 true 填充字段使其类似 C 的结构体
copy 复制 dltype 对象,如果为 false,则是对内置数据类型对象的引用
'''
dt = np.dtype(np.int32)
print(dt)
a = np.arange(24)
print(a.ndim)
b = a.reshape(2, 4, 3)
print(b.ndim)
'''
创建数组
numpy.empty 方法用于创建一个指定形状,数据类型且未初始化的数组
numpy.empty(shape, dtype = float, order = 'C')
order 中有 'C' 和 ’F‘ 两个选项,分别代表行优先和列优先,在计算机内存中的村塾元素的顺序
'''
x = np.empty([3, 2], dtype = int)
print(x)
'''
numpy.frombuffer 用于实现动态数组
numpy.frombuffer 接受 buffer 输入参数,以流的形式读入转换成 ndarray 对象。
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
buffer 可以是任意对象,会以流的形式读入
count 读取的数据数量,默认是 -1,读取所有数据
offset 读取的起始位置,默认是 0
'''
s = b'Hello Wprld'
a = np.frombuffer(s, dtype = 'S1')
print(a)
'''
numpy.arange 函数创建数值范围并返回 ndarray 对象
numpy.arange(start, stop, step, dtype)
start 起始值,默认是 0
stop 终止值 (不包含)
step 步长,默认为 1
dtype 返回 ndarray 的数据类型,如果没有提供,则会使用输入数据的类型
'''
x = np.arange(5)
print(x)
x = np.arange(10, 20, 2)
print(x)
a = np.linspace(1, 10, 10)
print(a)
a = np.linspace(1, 1, 10)
print(a)
s = slice(2, 7, 2)
print(a[s])