2016-04-10 31 views
0

からリストを削除して保存する:は、私は、以下の構成の辞書を持って 、Pythonで辞書

[ ['FOXP2_MOUSE', 'AminoAcidSequence1'], ['FOXP2_RAT','AminoAcidSequence2'], ['FOXP2_DOG', 'AminoAcidSequence3'] ]. 

私は辞書からキー付きFOXP2_DOGを削除して、一人で新しい辞書に配置しようとしています。私は別の方法を試みました:del.remove無駄です。このような

+0

は、それはリストのリストです。 – MattDMo

答えて

0

:辞書ではありません

>>> my_list= [ ['FOXP2_MOUSE', 'AminoAcidSequence1'], ['FOXP2_RAT','AminoAcidSequence2'], ['FOXP2_DOG', 'AminoAcidSequence3'] ] 
>>> my_dict = dict(my_list) 
>>> my_dict 
{'FOXP2_RAT': 'AminoAcidSequence2', 'FOXP2_MOUSE': 'AminoAcidSequence1', 'FOXP2_DOG': 'AminoAcidSequence3'} 
>>> my_new_dict = {} 
>>> my_new_dict['FOXP2_MOUSE'] = my_dict.pop('FOXP2_MOUSE') 
>>> my_dict 
{'FOXP2_RAT': 'AminoAcidSequence2', 'FOXP2_DOG': 'AminoAcidSequence3'} 
>>> my_new_dict 
{'FOXP2_MOUSE': 'AminoAcidSequence1'} 
+1

これは質問に答えません。 OPは '' FOXP2_DOG ''を削除して、新しいDICTに置きたいと思っています。 – MattDMo

+0

@MattDMo解決策を更新する – Hackaholic

+0

それでもなお正しいわけではありません。 'NameError:name 'my_new_dict'が定義されていません。 – MattDMo

0
my_data = [ ['FOXP2_MOUSE', 'AminoAcidSequence1'], ['FOXP2_RAT','AminoAcidSequence2'], ['FOXP2_DOG', 'AminoAcidSequence3'] ] 

def custom_filter_data(data, key): 

    final_res = [] 

    for i in range(len(data)): 
     if data[i][0] == key: 
      final_res.append(data[i]) 
      del data[i] 

    return data, final_res 

results = custom_filter_data(my_data,'FOXP2_DOG') 
old = results[0] 
new = results[1] 
print old 
print new 
+0

ありがとうございます!それは働いた –

+0

@ jaimed_2003喜んでこれは助けのでした、あなたはこの答えが最も有用であることがわかったら受け入れることができますか? – supamaze

関連する問題