有时需要在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. p4lang/switch make bm-switchsai 出现内存不足导致的Error
  2. jqGrid属性中文详细说明 (转)
  3. RDIFramework.NET ━ 9.12 表字段管理 ━ Web部分
  4. 开始学CI
  5. javascript优化--06模式(对象)01
  6. 一个for列出横纵坐标
  7. Install GD on mac
  8. Cannot start service SPUserCodeV4 on computer
  9. stdio.h及cstdio的区别
  10. linux系统管理
  11. [151225] Python3 实现最大堆、堆排序,解决TopK问题
  12. Android SDK更新失败最新解决方案
  13. windows.h与winsock2.h的包含顺序
  14. JS输出当前时间,且每秒变化
  15. JavaScript技巧&写法
  16. “玲珑杯”ACM比赛 Round #1 题解
  17. Asp.Net 常用工具类之Office-文档操作(6)
  18. 使用OTP动态口令(每分钟变一次)进行登录认证
  19. mongodb生产环境(副本集模式)集群搭建配置
  20. 简单认识一下什么是vue-router

热门文章

  1. android 数据库中的事务_银行转账示例
  2. 数据挖掘:Weka代码学习
  3. The breakpoint will not currently be hit. No symbols have been loaded for this document."
  4. <Linux系统hostname命令详解>
  5. SDRAM控制器
  6. VHDL基本常识
  7. LVS-HA
  8. ADO.NET笔记——使用连接池
  9. document.write() 和 document.writeln() 区别
  10. Powerdesigner15 创建数据库生成脚本