IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

[python]定制JSON中的浮点数格式

idv2 2011-05-31 14:02:16 累计浏览 3,892 次
本机暂存

    有时需要在JSON中使用浮点数,比如价格、坐标等信息。但python中的浮点数相当不准确,例如下面的代码:

#!/usr/bin/env python

import json as json

data = [ 0.333, 0.999, 0.1 ]
print json.dumps(data)

    输出结果如下:

$ python floatjson.py
[0.33300000000000002, 0.999, 0.10000000000000001]

    能不能指定浮点数的输出格式,比如精确到小数点后两位呢?有个简单的方法,虽然比较dirty:

#!/usr/bin/env python

import json
json.encoder.FLOAT_REPR = lambda x: format(x, \\\'.3f\\\')

data = [ 0.333, 0.999, 0.1 ]
print json.dumps(data)

    这样输出结果为:

$ python floatjson.py 
[0.333, 0.999, 0.100]

同分类推荐文章

  1. 等了十年的 Go 链式管道,终于来了:seq 让你像写 Scala 一样写 Go (2026-06-25 18:38:18)
  2. Go 实验特性详解 (2026-06-21 10:05:27)
  3. amd64 微架构级别对 Go 程序性能提升多少? (2026-06-21 09:38:49)

查看更多 后端 文章 →

建议继续学习

  1. 用Hyer来进行网站的抓取 (累计阅读 158,250)
  2. 配置Nginx+uwsgi更方便地部署python应用 (累计阅读 107,164)
  3. 程序员技术练级攻略 (累计阅读 35,469)
  4. python实现自动登录discuz论坛 (累计阅读 32,833)
  5. python编程细节──遍历dict的两种方法比较 (累计阅读 20,371)
  6. 每个程序员都应该学习使用Python或Ruby (累计阅读 17,917)
  7. Chrome和goagent的配置方法,你懂的 (累计阅读 16,842)
  8. 30分钟3300%性能提升――python+memcached网页优化小记 (累计阅读 13,741)
  9. 使用python爬虫抓站的一些技巧总结:进阶篇 (累计阅读 13,301)
  10. 我的PHP,Python和Ruby之路 (累计阅读 13,146)