给定这个简单的 python 脚本:
import sys, math
for i in range(1, len(sys.argv)):
num = float(sys.argv[i])
print('sin(%f) = %f' % (num, math.sin(num)))
使用这些参数运行:
python hw2a.py 1.4 -0.1 4 99
我想要这个输出:
sin(1.4)=0.98545
sin(-0.1)=-0.0998334
sin(4)=-0.756802
sin(99)=-0.999207
但是,当我运行它时,我在小数点和有效数字后面得到了很多无关紧要的数字(好吧,零)。我知道我可以使用例如 %.3f 指定固定的小数位数,但是我怎样才能让它打印小数点后的所有数字,直到没有有效数字为止?
提前致谢!
最佳答案
你可以用%g
格式化:
In [16]: a = [1.4, -0.1, 4, 99]
In [18]: for num in a:
...: print('sin(%g) = %g' % (num, math.sin(num)))
...:
sin(-0.1) = -0.0998334
sin(4) = -0.756802
sin(99) = -0.999207
关于python - 在 Python 中仅打印有效数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25426958/