#.numpy
文章目录
import numpy as np
# Ndarray 对象
# np.array(object, dtype=None, copy=True, order=None, subok=False, ndmin=0)
# 1.object 任何暴露数组接口方法的对象都会返回一个数组或任何(嵌套)序列。
# 2.dtype 数组的所需数据类型,可选。
# 3.copy 可选,默认为true,对象是否被复制。
# 4.order C(按行)、F(按列)或A(任意,默认)。
# 5.subok 默认情况下,返回的数组被强制为基类数组。 如果为true,则返回子类。
# 6.ndmin 指定返回数组的最小维数。
# a = np.array([[1, 2], [3, 4]])
# print(a)
# 数据类型
# bool_、int_、int8、int32、int64、float_、float32、float64...
# print(a.dtype)
# 结构化数据类型
# student = np.dtype([('name', 'S20'), ('age', 'i1'), ('marks', 'f4')])
# a = np.array([('abc', 21, 50),('xyz', 18, 75)], dtype = student)
# print(a)
# 'b':布尔值
# 'i':符号整数
# 'u':无符号整数
# 'f':浮点
# 'c':复数浮点
# 'm':时间间隔
# 'M':日期时间
# 'O':Python 对象
# 'S', 'a':字节串
# 'U':Unicode
# 'V':原始数据(void)
# 数组属性
# a = np.array([[1, 2, 3], [4, 5, 6]])
# # print(a.shape)
# a.shape = (3, 2) # b = a.reshape(3,2)
# # print(a)
# c = np.arange(10)
# c = c.reshape(2, 5)
# # print(c.ndim) # 维度
# 创建例程
# x = np.empty([3, 2], dtype=int) # 空数组,内部是随机数
# # print(x)
# y = np.zeros((5,), dtype=int)
# # print(y)
# z = np.ones([2, 2], dtype=int)
# # print(z)
# 来自现有数据的数组
# asarray、frombuffer、fromiter
# x = [(1, 2, 3), (4, 5)]
# a = np.asarray(x, dtype=tuple)
# print(a)
# 来自数值范围的数组
# x = np.arange(10, 20, 2)
# print(x)
# y = np.linspace(10, 20, 5) # 5个生成数
# print(y)
# 切片和索引
a = np.arange(10)
s = slice(2, 7, 2)
print(a[s])
print(a[2:7:2])