Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用复数时如何限制小数位数_Python_Formatting_Complex Numbers - Fatal编程技术网

Python 使用复数时如何限制小数位数

Python 使用复数时如何限制小数位数,python,formatting,complex-numbers,Python,Formatting,Complex Numbers,如何限制小数位数。通常我会使用上面的方法,但它不适用于复数 希望这有帮助 (本应遵循重复的标记/注释/etc协议,但缺少该协议的代表)您可以使用复数的imag和real属性来获取各自的值 sqrtnum_ = 0 sqrtnum_ = cmath.sqrt(snum_) print "Using cmath.sqrt:" print " sqrt(", snum_, ") = ", '%.12f' %sqrtnum_ 这也适用于完全实数 >>> a = cm

如何限制小数位数。通常我会使用上面的方法,但它不适用于复数

希望这有帮助


(本应遵循重复的标记/注释/etc协议,但缺少该协议的代表)

您可以使用复数的
imag
real
属性来获取各自的值

sqrtnum_ = 0
sqrtnum_ = cmath.sqrt(snum_)

print "Using cmath.sqrt:"
print "    sqrt(", snum_, ") =      ", '%.12f' %sqrtnum_
这也适用于完全实数

>>> a = cmath.sqrt(-1000)
>>> "%.12f + %.12fj"%(a.real,a.imag)
'0.000000000000 + 31.622776601684j'

你能不能只做
“%.12f+%.12f j”%(sqrtnum_uu.real,sqrtnum_uuu.imag)
你能指定一个小数的变量吗<代码>“%(变量)f+%.12fj”%(a.real,a.imag)@MarioGalván Yep,这是可能的。例如:你需要它
x
小数位表示实数,而
y
表示另一个,那么你可以
(“%%.%df+%%.%dfj”%(x,y))%(a.real,a.imag)
谢谢你的回答,我也尝试过使用它:
“%.*f+%.12fj%”(a.real,a.imag)
,它也很有效。@MarioGalvá,当然有很多方法可以做到这一点。
>>> a = cmath.sqrt(1000)
>>> "%.12f + %.12fj"%(a.real,a.imag)
'31.622776601684 + 0.000000000000j'