Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中的json排序_Python_Json - Fatal编程技术网

python中的json排序

python中的json排序,python,json,Python,Json,我有一个将要转换为Json的位置列表。。在将这些位置转换为Json列表后,我需要按距离对其进行排序 我遍历列表,将每个位置添加到一个数组中,如下所示 locations = [] for location in data: filtered_string = {'distance': location['distance']} locations.append(filtered_string) 然后我试着像这样对它们进行分类: sorted(loca

我有一个将要转换为Json的位置列表。。在将这些位置转换为Json列表后,我需要按距离对其进行排序

我遍历列表,将每个位置添加到一个数组中,如下所示

locations = []

    for location in data:
        filtered_string = {'distance': location['distance']}
        locations.append(filtered_string)
然后我试着像这样对它们进行分类:

 sorted(locations,key=extract_distance, reverse=True)

def extract_distance(json):
    try:
        return int(json['distance'])
    except KeyError:
        return 0
试一试

如果您希望原始数据保持完整,而不是仅分隔距离,并假设数据也有键距离(在使用位置['distance']时,似乎就是这种情况)


这看起来很合理——你哪里有问题?(除了我在任何地方都看不到任何实际的JSON)那么您需要在转换为JSON之后或之前按距离对它们进行排序吗?真正的问题是什么?似乎没有。是否将
排序(…)
的结果保存到变量中
sorted()
返回一个新列表,而
返回一个列表。sort()
就地排序。
sorted(locations, key=lambda k: k['distance'], reverse=True) 
sorted(data, key=lambda k: k['distance'], reverse=True)