python 把数据 json格式输出
有个要求需要在python的标准输出时候显示json格式数据,如果缩进显示查看数据效果会很好,这里使用json的包会有很多操作
1 2 3 4 5 | import json date = {u 'versions' : [{u 'status' : u 'CURRENT' , u 'id' : u 'v2.3' , u 'links' : [{u 'href' : u 'http://controller:9292/v2/' , u 'rel' : u 'self' }]}, {u 'status' : u 'SUPPORTED' , u 'id' : u 'v2.2' , u 'links' : [{u 'href' : u 'http://controller:9292/v2/' , u 'rel' : u 'self' }]}, {u 'status' : u 'SUPPORTED' , u 'id' : u 'v2.1' , u 'links' : [{u 'href' : u 'http://controller:9292/v2/' , u 'rel' : u 'self' }]}, {u 'status' : u 'SUPPORTED' , u 'id' : u 'v2.0' , u 'links' : [{u 'href' : u 'http://controller:9292/v2/' , u 'rel' : u 'self' }]}, {u 'status' : u 'SUPPORTED' , u 'id' : u 'v1.1' , u 'links' : [{u 'href' : u 'http://controller:9292/v1/' , u 'rel' : u 'self' }]}, {u 'status' : u 'SUPPORTED' , u 'id' : u 'v1.0' , u 'links' : [{u 'href' : u 'http://controller:9292/v1/' , u 'rel' : u 'self' }]}]} print json.dumps(data, sort_keys = True , indent = 2 ) # 排序并且缩进两个字符输出 |
这样就会得到如下的输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | { "versions" : [ { "id" : "v2.3" , "links" : [ { "href" : "http://controller:9292/v2/" , "rel" : "self" } ], "status" : "CURRENT" }, { "id" : "v2.2" , "links" : [ { "href" : "http://controller:9292/v2/" , "rel" : "self" } ], "status" : "SUPPORTED" }, { "id" : "v2.1" , "links" : [ { "href" : "http://controller:9292/v2/" , "rel" : "self" } ], "status" : "SUPPORTED" }, { "id" : "v2.0" , "links" : [ { "href" : "http://controller:9292/v2/" , "rel" : "self" } ], "status" : "SUPPORTED" }, { "id" : "v1.1" , "links" : [ { "href" : "http://controller:9292/v1/" , "rel" : "self" } ], "status" : "SUPPORTED" }, { "id" : "v1.0" , "links" : [ { "href" : "http://controller:9292/v1/" , "rel" : "self" } ], "status" : "SUPPORTED" } ] } |
可以看到都已经格式化了。
这是在python中,如果直接使用命令行,希望直接转换,可以使用 data | python -mjson.tool 来输出json格式的数据
1 | echo '{"first_key": "value", "second_key": "value2"}' | python - mjson.tool |
比如想直接在命令行中过滤得到first_key对于的值,那么这样即可:
1 | echo '{"first_key": "value", "second_key": "value2"}' | python - c 'import sys, json; print json.load(sys.stdin)[sys.argv[1]]' first_key |
就会得到对于的value了。
参考资料:
http://liuzhijun.iteye.com/blog/1859857
http://docs.python.org/2/library/json.html
http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html
http://pymotw.com/2/json/
收获不会与付出成反比
by juandx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2014-11-10 ruby 删除文件