在 Numpy 中使用 numpy.ldexp()
numpyserver side programmingprogramming更新于 2025/9/26 7:22:17
要逐元素返回 x1 * 2**x2,请使用 Python Numpy 中的 numpy.ldexp() 方法。第一个参数 X1 是乘数数组。第二个参数 X2 是二的指数数组。如果 x1.shape != x2.shape,则它们必须能够广播到相同的形状(该形状将成为输出的形状)。
输出是存储结果的位置。如果提供,则输出必须具有输入广播到的形状。如果未提供或为 None,则返回一个新分配的数组。元组(只能作为关键字参数)的长度必须等于输出的数量。
条件通过输入进行广播。当条件为 True 时,out 数组将被设置为 ufunc 的结果。在其他情况下,out 数组将保留其原始值。请注意,如果通过默认的 out=None 创建了未初始化的 out 数组,则其中条件为 False 的位置将保持未初始化状态。
步骤
首先,导入所需的库 −
import numpy as np
要逐元素返回 x1 * 2**x2,请使用 Python Numpy 中的 numpy.ldexp() 方法。
检查浮点数是否为负数
print("Result? ", np.ldexp(5.6, np.arange(3)))
检查浮点数是否为负数
print("Result? ", np.ldexp(-7.5, np.arange(3)))
检查整数是否为负数
print("Result? ", np.ldexp(9, np.arange(3)))
检查整数是否为负数−
print("Result? ", np.ldexp(106, np.arange(3)))
检查 nan −
print("Result? ", np.ldexp(np.nan, np.arange(3)))
检查 inf −
print("Result? ", np.ldexp(np.inf, np.arange(3)))
示例
import numpy as np
# 要按元素返回 x1 * 2**x2,请使用 Python Numpy 中的 numpy.ldexp() 方法。
# 第一个参数 X1 是乘数数组。
# 第二个参数 X2 是 2 的指数数组。
# 如果 x1.shape != x2.shape,则它们必须可广播到通用形状(该形状将成为输出的形状)。
# 检查浮点数
print("Result? ", np.ldexp(5.6, np.arange(3)))
# 检查负浮点数
print("Result? ", np.ldexp(-7.5, np.arange(3)))
# 检查整数
print("Result? ", np.ldexp(9, np.arange(3)))
# 检查负整数
print("Result? ", np.ldexp(106, np.arange(3)))
# 检查nan
print("Result? ", np.ldexp(np.nan, np.arange(3)))
# 检查inf
print("Result? ", np.ldexp(np.inf, np.arange(3)))
# 检查对数
print("Result? ", np.ldexp(np.log(1), np.arange(3)))
输出
Result? [ 5.6 11.2 22.4] Result? [ -7.5 -15. -30. ] Result? [ 9. 18. 36.] Result? [106. 212. 424.] Result? [nan nan nan] Result? [inf inf inf] Result? [0. 0. 0.]

