私はPythonでdictに取り組んでいます。私はそれをアルファベット順に並べ替え、分割して少し見栄えを良くしようとしています。ここに私が辞書でこれまでに持っているコードがあります。
authorentry = {'author': name, 'date': datef , 'path': path_change , 'msg' : xmlMsgf }
if not name in author:
author[ name ] = []
author[ name ].append( authorentry )
if not authorentry in author.items():
author['author'] = [authorentry]
print sorted (author.keys()), sorted (author.values())
今私がやりたいことは、作者と日付に基づいてソートされた順序で辞書を出力することです。また、それを分割して変更し、可能な場合はコンマと 'u' がすべて含まれないようにします。それを達成する方法についてのアイデアはありますか?
そのまま印刷するとこんな感じ。
私が望む方法は、著者が日付ではなくリストの最初に表示されることです。できればアルファベット順で、エントリのコンマを削除してきれいに印刷したいと思います。出来ますか?
[[{'date': ['06-08-2012 09:01:52 PM'], 'path': [u'/branches/Patch_4_2_0_Branch'], 'msg': ['none', u'PATCH_BRANCH:N/A\nBUG_NUMBER:N/A\nFEATURE_AFFECTED:N/A\nOVERVIEW:N/A\nAdding the SVN log size requirement to the branch \n'], 'author': u'glv'}], [{'date': ['06-08-2012 09:01:52 PM'], 'path': [u'/branches/Patch_4_2_0_Branch'], 'msg': ['none', u'PATCH_BRANCH:N/A\nBUG_NUMBER:N/A\nFEATURE_AFFECTED:N/A\nOVERVIEW:N/A\nAdding the SVN log size requirement to the branch \n'], 'author': u'glv'}]]
更新: 現在、著者をグループ化することはできますが、何らかの理由でアルファベット順に並べ替えることができないだけでなく、著者をリストの最初の人にすることさえできません。表示されるのは、次のようなものです。
Date: 06-08-2012 08:56:09 PM
Changes by : glv
Comments: PATCH_BRANCH:N/A BUG_NUMBER:N/A FEATURE_AFFECTED:N/A OVERVIEW:N/A Adding the svn commit line requrement
Directory Location: /trunk
私が注文したかった方法は、このようなものです。
Changes by : glv
Date: 06-08-2012 08:56:09 PM
Directory Location: /trunk
Comments: PATCH_BRANCH:N/A BUG_NUMBER:N/A FEATURE_AFFECTED:N/A OVERVIEW:N/A Adding the svn commit line requrement
OrderedList を試して、そのように機能するかどうかを確認しましたが、これまでのところ運も成功もありません。足りないものはありますか?