用python打印数字
我有一个脚本,可以生成一些数字(特别是纪元形式的时间) 每次它生成一个数字时,我都将该数字附加到一个数组(称为值)中,并打印该数组和该数字。但是,数字在小数点后的位数不如数组中的数字多 例如,示例输出如下所示(经过3次迭代): 数组中的第三个数字对应于数字中的值 为什么它们在小数点后包含不同数量的位置 离题:小数点后的数字叫什么?我以为他们有数学术语,我只是不记得是什么了用python打印数字,python,Python,我有一个脚本,可以生成一些数字(特别是纪元形式的时间) 每次它生成一个数字时,我都将该数字附加到一个数组(称为值)中,并打印该数组和该数字。但是,数字在小数点后的位数不如数组中的数字多 例如,示例输出如下所示(经过3次迭代): 数组中的第三个数字对应于数字中的值 为什么它们在小数点后包含不同数量的位置 离题:小数点后的数字叫什么?我以为他们有数学术语,我只是不记得是什么了 注意:代码是用python编写的 当python打印出一个数字时,它有时会根据内部方法是调用repr还是str(两者都将数字
注意:代码是用python编写的 当python打印出一个数字时,它有时会根据内部方法是调用
repr
还是str
(两者都将数字转换为字符串)打印出更多的小数位数repr
将返回更多的小数位数,而str不会
print
调用str
,因此当您执行打印号码
时,它会稍微修剪一下。但是,当您在打印值时将数字列表转换为字符串时,列表将在内部使用repr
,使其保留更多的小数位数
总之,根据打印方式的不同,您将看到不同的小数位数。但是,在内部,它仍然是相同的数字
如果要强制它使用特定的小数位数,可以执行以下操作:
print "%.3f" % 3.1415 # prints 3.142
打印列表时,它会为列表中的每个x打印repr(x) 当你打印数字时,它会打印str(x) 例如:
>>> print 123456789.987654321
123456789.988
>>> print [123456789.987654321]
[123456789.98765433]
>>> print str(123456789.987654321)
123456789.988
>>> print repr(123456789.987654321)
123456789.98765433
要获得所需的精度,您需要:
VALUES = [733948.45278935181, 733948.45280092594, 733948.45280092594]
for v in VALUES:
print '%18.11f' % (v)
我总是用“小数点后的数字”来表示小数点后的数字 小数点右边的数字部分(或更一般地说,数字的右边)称为数字的右边(与整数部分相反)。对于十进制系统,它可以称为小数部分。在二进制中,我看到了被称为小数位数的那部分数字
作者在提到数字的这一部分时,有时会用到这个词,但我相信很多人认为这个用法是错误的,因为根据我的经验,尾数最常被用作的同义词。Hmmm。我甚至不知道有repr()方法。非常感谢。
VALUES = [733948.45278935181, 733948.45280092594, 733948.45280092594]
for v in VALUES:
print '%18.11f' % (v)