Python 浮点数转字符串:如何得到 '0.03' 而不是 '-.03
有没有什么简单的方法可以把一个浮点数(范围在-0.99到+0.99之间)转换成总共4个字符的格式?比如说,正数会变成像'0.03'这样的格式,而负数则变成'-.03',也就是前面不加零。显然,我可以这样做:
s = '%4.2f' % n
if s[0] == '-':
s = '-%s' % s[2:]
不过,也许有些StackOverflow的朋友知道用Python可以更简便的方法?
2 个回答
5
好吧,你可以这样做:
"{0: 3.2f}".format(n)
这里的空格表示,对于正数,应该打印一个空格,而对于负数则打印负号。这样一来,它们的宽度就总是一样的。
2
当然可以!请看下面的内容:
在编程中,有时候我们需要让程序做一些重复的事情,比如处理很多相似的数据。这时候,我们就可以用“循环”这个概念。循环就像是一个指令,让程序不停地重复执行某些操作,直到满足特定的条件为止。
比如说,如果你想让程序打印数字1到10,你可以用循环来实现,而不是手动写十次打印的指令。这样不仅省事,还能减少出错的机会。
另外,循环有几种不同的类型,比如“for循环”和“while循环”。“for循环”通常用于已知次数的情况,而“while循环”则适合在不知道具体次数时使用,只要条件满足就会继续执行。
总之,循环是编程中一个非常重要的工具,它能帮助我们更高效地完成任务。
s = ('%4.2f' % n).replace('-0','-')