1
是否可以格式化複數以便實數部分在零時不顯示?Python複數數字零部分的格式化
我目前使用'{:.3g}'.format(x)
這確實抑制不必要的零了偉大的工作,但是我還是形式0+0.5j
,應該被扔進0.5j
的數字。
謝謝!
是否可以格式化複數以便實數部分在零時不顯示?Python複數數字零部分的格式化
我目前使用'{:.3g}'.format(x)
這確實抑制不必要的零了偉大的工作,但是我還是形式0+0.5j
,應該被扔進0.5j
的數字。
謝謝!
str
和repr
似乎工作:
>>> str(0.5j)
'0.5j'
>>> repr(0.5j)
'0.5j'
他們的工作就像一個魅力,但你可以給我一個提示如何只顯示小數點後三位,例如? – Faser
@Faser嗯,我不太瞭解格式化複雜數字,我只想到了像'{:.3g}'剝離'0+'這樣的黑客。format(x).lstrip('0+ '*(x.real == 0))'或將數字四捨五入爲str(複數(round(x.real,3),round(x.imag,3)))''。 –