1

辞書の要素を並べ替えるにはどうすればよいですか:

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
4

1 に答える 1

1

辞書は必要ありません。次の行をリストとして読み取ることができます。

with open('directory file txt','r') as f:
    lines = f.readlines()

次に、並べ替えキーを指定してリストを直接並べ替えます。

lines.sort(key = lambda s: int(s.rsplit('.', 1)[1]))
于 2012-11-30T16:55:30.533 に答える