如何在Python 3.9.15中获取(0 + infj)复数?
获取实部为0、虚部为无穷大的复数(0 + infj)
直接通过复数构造函数指定实部和虚部的值,就能得到目标复数:
complex(0, float('inf'))
运行验证:
>>> complex(0, float('inf')) (0+infj)
如果使用numpy,同样可以通过构造方法实现:
import numpy as np np.complex(0, np.inf) # 或者指定 dtype 确保结果正确 np.array(0 + np.inf*1j, dtype=np.complex128)
为什么之前的方法得到nan+infj?
按照IEEE 754浮点数标准,inf * 1j这类运算属于复数域的不确定运算,会被解析为nan + infj。而直接通过complex(实部, 虚部)的方式,是直接定义复数的两个组成部分,绕开了不确定运算,因此能得到预期的0+infj。
内容的提问来源于stack exchange,提问作者Firman
相关产品推荐
相关产品推荐

