Numpy库基础学习-1
# NumPy:NumericalPython,即数值Python包,是Python进行科学计算的一个基础包
# Numpy是Python的开源数值计算扩展,是实现科学计算的包
'''
1)一个具有矢量算术运算和节省空间的多维数组,ndarray
2)用于对整数数据进行快速运算的标准函数ufunc
3)实用的线性代数,傅里叶变换,随机数生成。
4)提供高级的数值编程工具,矩阵数据类型,矢量处理,精密运算库,专为严格的数字处理而产生。
5)Numpy的数据结构:ndarry,一种多维数组对象
'''
# 导入numppy库
import numpy as np
'''
ndarry:N维数组
一种由相同类型的元素组成的多维数组,元素数量事先定好。
元素的数据类型有dtype对象来指定,每个ndarray只有一种dtype类型。
大小固定,创建数组时一旦指定好大小,就不会在发生改变。
'''
a=[(0,1,2,3,4),(1,2,3,4,5)]
print(a)
b=np.array(a)
print(b)
np.array([1,12,23,34,45])
Out[3]:
In [6]:
np.array([[30,32,35],[40,42,45],[50,52,55]])
Out[6]:
In [9]:
mask=np.array([1,0,1,0,0,1],dtype=np.bool)
print(mask)
In [12]:
a1=[mask,2]
print(a1)
In [14]:
np.array([2,22,52])
Out[14]:
In [4]:
a2=np.array([[[3.4,5,6,8],[3,2.4,5,7]],[[2.3,4,5,6],[0.9,5,6,1]],[[9,6.7,3,2],[1,3,4,5]]])
In [5]:
'''
ndarray属性:
ndim维度数量;shape表示各维度大小的元组(),数组的形状。
dtype说明数组元素数据类型的对象
size元素总个数。
'''
print(a2.ndim)
print(a2.dtype)
print(a2.shape)
print(a2.size)
In [22]:
ndarry01=np.array([[[1,2,3,5],[3,4,5,6],[4,5,6,7],[9,4,5,6]],[[9,8,4,5],[4,6,7,9],[9,5,3,1],[7,5,6,1]]],dtype=float)
print(ndarry01)
In [23]:
# ndarry的shape属性
# 去掉最外围的[],得到ndarray01[0],ndarray01[1]
# 层层去中括号对,每去一层,一个维度,去掉一层[],后的元素个数逗号隔开的,就是该维度元素的个数。
# 3维的数组,页-行-列
ndarry01[0]
ndarry01[1]
Out[23]:
In [25]:
# 再去掉第二层[],得到ndarray01[0][0],ndarray01[0][1],ndarray01[0][2],ndarray01[0][3]
ndarry01[0][0]
Out[25]:
In [26]:
# 再来去掉一层
ndarry01[0,1,3]
Out[26]:
In [27]:
# array函数创建数组:接收一个普通的Python序列,转成ndarry
# 用列表创建
a3=np.array([
[
[3,4,5,6],
[4,5,6,7]
],
[
[1,2,3,4],
[2,3,4,5]
],
[
[9,8,7,6],
[4,5,6,7]
]
])
In [28]:
print(a3)
In [29]:
# 用元组创建
b=np.array((
(
(1,2,3,4),(4,5,6,7),(9,3,4,5)
),
(
(0,2,3,4),(5,4,3,1),(4,8,9,2)
)
))
In [6]:
# 用列表里面嵌套元组创建
c=np.array([
(
(1,2,3,4),(4,5,6,7),(9,3,4,5)
),
(
(0,2,3,4),(5,4,3,1),(4,8,9,2)
)
])
In [7]:
print(c)
In [32]:
# 用函数创建
np.zeros((3,4))
np.ones((4,6))
np.empty((2,3,4))
Out[32]:
In [34]:
# arange函数创建一维数组:通过指定开始值,终值和步长来创建一维数组
np.arange(20)
np.arange(0,20,1)
np.arange(0,20,2)
np.arange(0,12).reshape(3,4)
Out[34]:
In [35]:
#linspace函数:指定开始值,终值和元素个数创建一维数组,可以包含终值,等差数列
np.linspace(0,10,5)
Out[35]:
In [37]:
# logspace函数:类似linspace,不过它创建等比数列
np.logspace(0,2,5)
Out[37]:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)