2016-12-01 5 views
0

Python初心者はここにあります。Python辞書、同じ文字列がキーに入ります

私は多くの文字列を含むファイルを持っています。これらの文字列の中には同じIDを持つものがあります。これらのIDを1つのキーに追加したいと思います。私は辞書の同じキーに最初と3番目の文字列を入れてしまう方法

1234, Random User, first data 
    2345, Another User, random data 
    1234, Random User, different data 

:ファイルから来る

データは、次のようになります。

1234: {[1234, Random User, first data], [1234, Random User, different data]} 
    2345: {[2345, Another User, random data]} 

何かが好きです。

新しく作成された辞書から、ユーザー名またはデータのみを印刷するなど、データの一部をどのように抽出すればよいでしょうか。

+0

キーを正規表現し、 'collections'モジュールから' defaultdict'を使います。 –

+0

「最初のデータ」の「ランダムユーザー」と「異なるデータ」の「ランダムユーザー」は同じですか? これは本当にデータを表示する方法ですか? [xiproblem](http://xyproblem.info/)を防ぐのと同様に、使用するデータの内容を記述してください。 –

+0

はい、ランダムユーザーは同じIDであるため同じユーザーです(1234)。 例えば、データは2つの整数になります。 – Park

答えて

1
from collections import defaultdict 

res = defaultdict(list) 

for line in open('myfile.txt'): 
    key = line.split(",", 1)[0] 
    res[key].append(line) 
関連する問題