gpt4 book ai didi

Python 字典排序

转载 作者:太空宇宙 更新时间:2023-11-04 07:31:51 27 4
gpt4 key购买 nike

我有一个python字典

var = {'count': [1, 1, 1, 1, 1],
'path': ['/media/anurag/Work/search_script/masterfile.txt',
"/media/anurag/Work/search_script/Women's Running Shoes/Women's Running Shoes_2.csv",
"/media/anurag/Work/search_script/Men's Running Shoes/masterfile.txt",
"/media/anurag/Work/search_script/Men's Running Shoes/Men's Running Shoes_1.csv",
"/media/anurag/Work/search_script/Men's Running Shoes/output.txt"],
'modified': [1502974843.8277025, 1501594022.454686, 1501945289.3378062,
1501593976.6210368, 1501945143.4162745],
'row': [9541, 8723, 1664, 506, 2200]}

现在我必须根据 modified 作为键进行排序。不扰乱秩序。为此,我使用了 pandas:

我的 Pandas 解决方案是

In [1]: import pandas as pd

In [2]: var = {'count': [1, 1, 1, 1, 1], 'path': ['/media/anurag/Work/search_script/masterfile.txt', "/media/anurag/Work/search_script/Women's Running Shoes/Women's Running Shoes_2.csv", "/media/anurag/Work/search_script/Men's Running Shoes/masterfile.txt", "/media/anurag/Work/search_script/Men's Running Shoes/Men's Running Shoes_1.csv", "/media/anurag/Work/search_script/Men's Running Shoes/output.txt"], 'modified': [1502974843.8277025, 1501594022.454686, 1501945289.3378062, 1501593976.6210368, 1501945143.4162745], 'row': [9541, 8723, 1664, 506, 2200]}

In [3]: search_result = pd.DataFrame.from_dict(var)

In [4]: search_result.sort_values('modified', inplace=True, ascending=False)

In [5]: search_result
Out[5]:
count modified path \
0 1 1.502975e+09 /media/anurag/Work/search_script/masterfile.txt
2 1 1.501945e+09 /media/anurag/Work/search_script/Men's Running...
4 1 1.501945e+09 /media/anurag/Work/search_script/Men's Running...
1 1 1.501594e+09 /media/anurag/Work/search_script/Women's Runni...
3 1 1.501594e+09 /media/anurag/Work/search_script/Men's Running...

row
0 9541
2 1664
4 2200
1 8723
3 506

我可以不用 pandas 做这个吗?

最佳答案

您可以将对象存储为字典映射,然后使用适当的排序标准(由 key 指定)对此类对象的列表进行排序。像下面这样的东西-

var = {'count': [1, 1, 1, 1, 1], 'path': ['/media/anurag/Work/search_script/masterfile.txt', "/media/anurag/Work/search_script/Women's Running Shoes/Women's Running Shoes_2.csv", "/media/anurag/Work/search_script/Men's Running Shoes/masterfile.txt", "/media/anurag/Work/search_script/Men's Running Shoes/Men's Running Shoes_1.csv", "/media/anurag/Work/search_script/Men's Running Shoes/output.txt"], 'modified': [1502974843.8277025, 1501594022.454686, 1501945289.3378062, 1501593976.6210368, 1501945143.4162745], 'row': [9541, 8723, 1664, 506, 2200]}

objects = [{field: value[i] for field,value in var.items()}
for i in range(len(var['count']))]

objects.sort(key=itemgetter('modified')) # you may add reverse=True as per need

关于Python 字典排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45796740/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com