2011-10-23 9 views
4

これは非常に簡単で、他の質問と組み合わせても正しいとは思いますが、正解を見つけることはできません。Pythonのユニコード文字列を辞書にパースする

私はユニコード文字列を持っています:u"word1 word2 word3..."これは常に同じフォーマットになります。私はいつも同じキーを持つことになり、辞書にそれを解析する:

"key1:word1 key2:word2 key3:word3..."

がどのように私はこれを行うのですか?

答えて

2

はこれを試してみてください:

keys = ['key1', 'key2', 'key3'] 
words = u'word1 word2 word3' 
vals = words.split() 

d = dict(zip(keys, vals)) 

そして、あなたはあなたの例では1のような文字列のキー/値のペア取得する場合:

' '.join(sorted(k + ':' + v for k,v in d.items())) 
+0

[OK]を完全に働きました。愚かなフォローアップ:分割後の2つの値を分割したい場合、単語3と単語4をスペースで区切って1つの単語にするにはどうすればよいですか? – fox

+1

あなたは別のセパレータを使用することができます。 '、'とそのセパレータを使って分割します。 –

+0

私はここで答えを見つけました:http://stackoverflow.com/questions/1142851/merge-list-items-in-a-python-list私はそれをもっと複雑にしようとしますが、言葉3と4がそれらの間のスペースで保存することを望むならどうしますか? – fox

関連する問題