当前位置: 首页 > news >正文

NumPy 2.x 完全指南【九】常量

文章目录

  • 1. 概述
  • 2. pi(圆周率)
  • 3. e(欧拉数)
  • 4. euler_gamma(欧拉-马歇罗尼常数)
  • 5. inf(无穷大)
  • 6. nan(非数字)
  • 7. newaxis(None)

1. 概述

NumPy 提供了一系列预定义的数学和科学计算常量,比如像 πe 等经常会用到的常数,在需要使用时可直接通过 numpy 模块访问:

常量名称描述值(示例)​
np.pi圆周率3.141592653589793
np.e自然对数的底(欧拉数)2.718281828459045
np.euler_gamma欧拉-马歇罗尼常数0.5772156649015329
np.inf正无穷大inf
np.NINF负无穷大-inf
np.nan非数字(无效值)nan
np.PZERO正零+0.0
np.NZERO负零-0.0
np.newaxis增加数组维度的别名None

2. pi(圆周率)

numpy.pi:圆周率 π,精度为双精度浮点数(float64)。

示例:

import numpy as npp = np.pi
print(p) # 3.141592653589793
print(type(p)) # <class 'float'>radius = 5 # 半径
area = p * radius ** 2  # 计算圆面积
print(area) # 78.53981633974483

3. e(欧拉数)

numpy.e:自然对数的底(自然常数、欧拉数),精度为双精度浮点数。

示例:

e = np.e
print(e) # 2.718281828459045
print(type(e)) # <class 'float'>exponential = np.e ** 2
print(exponential) # 7.3890560989306495

4. euler_gamma(欧拉-马歇罗尼常数)

numpy.euler_gamma:欧拉-马歇罗尼常数。

示例:

eg = np.euler_gamma
print(eg) # 0.5772156649015329
print(type(eg)) # <class 'float'>

5. inf(无穷大)

​numpy.inf:正无穷大。
-numpy.inf:负无穷大。

示例:

inf = np.inf
print(inf)  # inf
print(type(inf))  # <class 'float'>_inf = -np.inf
print(_inf)  # -inf
print(type(_inf))  # <class 'float'>

​Python 遵循 IEEE 754 浮点数标准,将 inf 视为浮点数类型的一部分:

  • 正无穷大:inf
  • 负无穷大:-inf
  • 非数字:NaN

NumPy 提供了检测数组中的无穷大元素的相关函数,返回值为布尔数组(True 表示对应位置是无穷大):

  • numpy.isinf:检测数组中所有无穷大元素(包括正无穷和负无穷)。
  • numpy.isposinf:检测数组中的正无穷大元素(不包括负无穷)。
  • numpy.isneginf:检测数组中的负无穷大元素(不包括正无穷)。

示例:

# 检测数组中所有无穷大元素
arr = np.array([1, 2, np.inf, -np.inf, np.nan])
print(np.isinf(arr))  # 输出:[False False  True  True False]# 检测数组中的正无穷大元素
print(np.isposinf(arr))  # 输出:[False False  True False False]# 检测数组中的负无穷大
print(np.isneginf(arr))  # 输出:[False False False  True False]# 检测数组中的非数字
print(np.isnan(arr))  # 输出:[False False False False  True]# 检测数组中的有限值
print(np.isfinite(arr))  # 输出:[ True  True False False False]

6. nan(非数字)

numpy.nan:非数字(Not a Number),表示未定义或不可表示的值。

示例:

nan = np.nan
print(nan)  # nan
print(type(nan))  # <class 'float'>arr = np.array([1, 2, np.nan])
print(np.isnan(arr))  # 输出: [False False True]

相关函数:

  • numpy.isnan:检测数组中的非数字。
  • numpy.isfinite:检测数组中的有限值(既不是 inf-inf 也不是 NaN)。

示例:

# 检测数组中所有无穷大元素
arr = np.array([1, 2, np.inf, -np.inf, np.nan])# 检测数组中的非数字
print(np.isnan(arr))  # 输出:[False False False False  True]# 检测数组中的有限值
print(np.isfinite(arr))  # 输出:[ True  True False False False]

7. newaxis(None)

numpy.newaxis:特殊常量,用于在数组操作中增加新的维度,作用等价于 None

示例:

# 验证 newaxis 是 None 的别名
np.newaxis is None  # 输出: Truex = np.arange(3)  # 输出: array([0, 1, 2])
#
# 增加新维度(列向量)
x[:, np.newaxis]  # 输出: array([[0], [1], [2]])# 多维扩展
x[:, np.newaxis, np.newaxis]  # 输出: array([[[0]], [[1]], [[2]]])

相关文章:

  • git经验
  • 基于Qt的app开发第八天
  • 聊一聊Electron中Chromium多进程架构
  • 如何优化 Linux 服务器的磁盘 I/O 性能
  • 自动化测试基础知识详解
  • 蓝桥杯12届国B 纯质数
  • (七)深度学习---神经网络原理与实现
  • vue 中绑定样式 【style样式绑定】
  • 3d关键点 可视化
  • 阳光学院【2020下】计算机网络原理-A卷-试卷-期末考试试卷
  • 北斗如何赋能雨水情监测?
  • 南方科技大学Science! 自由基不对称催化新突破 | 乐研试剂
  • 性能优化--无分支编程的实际应用场景
  • 佰力博科技准静态d33测试的注意事项
  • SAP汽配解决方案:无锡哲讯科技助力企业数字化转型
  • amd架构主机构建arm架构kkfileview
  • rtty操作记录说明
  • 日志链路ID配置,traceId多线程不打印什么鬼?
  • 如何在sheel中运行spark
  • 驱动无忧,打印随心:统信推出全新驱动下载平台
  • 赖清德为“临阵脱逃”作准备,国台办:绝不会任“台独”祸首逍遥法外
  • 国台办:民进党当局刻意刁难大陆配偶,这是不折不扣的政治迫害
  • 美国务卿鲁比奥将前往土耳其参加俄乌会谈
  • 国务院关税税则委员会公布公告调整对原产于美国的进口商品加征关税措施
  • 反制美国钢铝关税!印度拟对美国部分商品征收关税
  • 中拉论坛部长级会议为何悬挂海地和圣卢西亚的国旗?外交部回应