Python 如何分类听写

Python 如何分类听写,python,dictionary,Python,Dictionary,如何对字典中的元素进行排序: with open('directory file txt','r') as f: for line in f: keys = line.strip().split('.') value = keys[-1] for key in reversed(keys[1:-1]): value = {key: value}

如何对字典中的元素进行排序:

with open('directory file txt','r') as f:
     for line in f:
              keys = line.strip().split('.')
              value = keys[-1]
              for key in reversed(keys[1:-1]):
                     value = {key: value}
              result[keys[0]]=value
现在如果有打印键,我有:

['a','b','c','d','1']
['a','f','e','d','3']
['f','b','c','d','2']
['a','b','c','d','0']
我可以按最后一个元素对每个元素进行排序并将其保存到文件中吗? 因此,我的输出将是:

a.b.c.d.0
a.b.c.d.1
f.b.c.d.2
a.f.e.d.3

你不需要字典。您可以将中的行作为列表读取:

with open('directory file txt','r') as f:
    lines = f.readlines()
然后通过指定排序键直接对列表进行排序:

lines.sort(key = lambda s: int(s.rsplit('.', 1)[1]))

你不需要字典。您可以将中的行作为列表读取:

with open('directory file txt','r') as f:
    lines = f.readlines()
然后通过指定排序键直接对列表进行排序:

lines.sort(key = lambda s: int(s.rsplit('.', 1)[1]))

好的,谢谢,但是如果我想对多词典的元素进行排序,我可以吗?@user1841492:词典没有顺序。列表有顺序。是的,当然。。但是如果我想打印按值排序的字典元素?@user1841492:您可以使用
排序的
。它适用于任何收藏。语法是排序的(yourdict,key=…)
。好的,谢谢,但是如果我想对多字典的元素排序,我可以吗?@user1841492:字典没有顺序。列表有顺序。是的,当然。。但是如果我想打印按值排序的字典元素?@user1841492:您可以使用
排序的
。它适用于任何收藏。语法已排序(yourdict,key=…)