2017-07-20 11 views
-2

私は数多くの辞書を持っています。私は彼らの名前をリストに(文字列として)保存しています。文字列として保存された名前を使用して、プログラムで特定の辞書にアクセスするにはどうすればよいですか?名前が文字列変数に含まれている場合、オブジェクトに名前でアクセスするにはどうすればよいですか?

>>> dict1 = dict([('key1',1), ('key',2), ('key3',3)]) 
>>> dict1.keys() 
dict_keys(['key2', 'key1', 'key3']) 
>>> dictname = 'dict1' 
>>> dictname.keys() 
AttributeError: 'str' object has no attribute 'keys' 

私はこれがうまくいかない理由を理解していますが、他の方法で行うことはできますか?

+1

あなたが辞書の辞書をしたいように聞こえます。 –

+0

https://stackoverflow.com/questions/9437726/how-to-get-the-value-of-a-variable-given-its-name-in-a-stringもご覧ください。 –

答えて

1

多分このような何か(dictnameが定義されていると仮定します)?

dictname['dict1'] = dict1 

ない場合:

dictname = {'dict1': dict1} 

、その後...

dictname['dict1'].keys() 
>>> dict_keys(['key1', 'key2', 'key3']) 
関連する問題