python 保存float类型的小数的位数方法

yipeiwu_com6年前Python基础

python保留两位小数:

In [1]: a = 5.026

In [2]: b = 5.000

In [3]: round(a,2)
Out[3]: 5.03

In [4]: round(b,2)
Out[4]: 5.0

In [5]: '%.2f' % a
Out[5]: '5.03'

In [6]: '%.2f' % b
Out[6]: '5.00'

In [7]: float('%.2f' % a)
Out[7]: 5.03

In [8]: float('%.2f' % b)
Out[8]: 5.0

In [9]: from decimal import Decimal

In [10]: Decimal('5.026').quantize(Decimal('0.00'))
Out[10]: Decimal('5.03')

In [11]: Decimal('5.000').quantize(Decimal('0.00'))
Out[11]: Decimal('5.00')

这里有三种方法

round(a,2)

'%.2f' % a

Decimal('5.000').quantize(Decimal('0.00'))

当需要输出的结果要求有两位小数的时候,字符串形式的:'%.2f' % a 方式最好,其次用Decimal。

需要注意的:

1. 可以传递给Decimal整型或者字符串参数,但不能是浮点数据,因为浮点数据本身就不准确。

2. Decimal还可以用来限定数据的总位数。

以上这篇python 保存float类型的小数的位数方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python3将数据保存为txt文件的方法

Python3将数据保存为txt文件的方法

Python3将数据保存为txt文件的方法,具体内容如下所示: f = open("data/model_Weight.txt",'a') #若文件不存在,系统自动创建。'a'表...

在Python中表示一个对象的方法

在 Python 中一切都是对象。如果要在 Python 中表示一个对象,除了定义 class 外还有哪些方式呢?我们今天就来盘点一下。 0x00 dict...

对python多线程与global变量详解

今天早上起来写爬虫,基本框架已经搭好,添加多线程爬取功能时,发现出错: 比如在下载文件的url列表中加入200个url,开启50个线程。我的爬虫…竟然将50个url爬取并全部命名为0.h...

解决python写入带有中文的字符到文件错误的问题

在python写脚本过程中需要将带有中文的字符串内容写入文件,出现了报错的现象。 ---------------------------- UnicodeEncodeError: 'as...

快速实现基于Python的微信聊天机器人示例代码

快速实现基于Python的微信聊天机器人示例代码

最近听说一个很好玩的图灵机器人api,正好可以用它做一个微信聊天机器人,下面是实现 # test.py import requests import itchat #这是一个用于...