Python中文
首页
教程
问答
标签
搜索
登录
注册
Python对JSON值排序列表
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个由JSON组成的文件,每个文件都有一行,并且希望按update_time reversed对文件进行排序。</p> <p>示例JSON文件:</p> <pre><code>{ "page": { "url": "url1", "update_time": "1415387875"}, "other_key": {} } { "page": { "url": "url2", "update_time": "1415381963"}, "other_key": {} } { "page": { "url": "url3", "update_time": "1415384938"}, "other_key": {} } </code></pre> <p>想要输出:</p> <pre><code>{ "page": { "url": "url1", "update_time": "1415387875"}, "other_key": {} } { "page": { "url": "url3", "update_time": "1415384938"}, "other_key": {} } { "page": { "url": "url2", "update_time": "1415381963"}, "other_key": {} } </code></pre> <p>我的代码:</p> <pre><code>#!/bin/env python #coding: utf8 import sys import os import json import operator #load json from file lines = [] while True: line = sys.stdin.readline() if not line: break line = line.strip() json_obj = json.loads(line) lines.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(json_obj) #sort json lines = sorted(lines, key=lambda k: k['page']['update_time'], reverse=True) #output result for line in lines: print line </code></pre> <p>代码在示例JSON文件中运行良好,但如果JSON没有“更新时间”,则会引发KeyError异常。有没有其他的方法可以做到这一点?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code># sort json lines = sorted(lines, key=lambda k: k['page'].get('update_time', 0), reverse=True) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
得到媒体:缩略图url从rss源
3 回答
得到对数正态随机数给定log10均值和log10标准差
9 回答
得到工作,波斯特不
8 回答
得到左半积和右半积的绝对差最小的元素
2 回答
得到幻数错误?
9 回答
得到异常错误“线程中的异常-1(最有可能在解释器关闭期间引发)”,它使用Parami
3 回答
得到循环
3 回答
得到德语的语法变化
6 回答
得到我认为是好的结果,但还不够
8 回答
得到截断svd.transform()返回float16而不是float64
10 回答
得到所有不相交的集合的并集
1 回答
得到所有函数求值组合的矩阵
3 回答
得到扭曲延迟取消错误当使用刮痧时
4 回答
得到控制台.log使用Selenium python从Chrome输出一次,然后调用第二次为空
3 回答
得到操作系统环境通过NSSM运行Python
9 回答
得到数学方程中的表达式
2 回答
得到数据库结构属性
7 回答
得到整数的后三位
10 回答
得到整数的第n位精度
4 回答
得到最低落的reddit评论
1 回答