1

私はPythonを初めて使用するので、これはおそらくばかげた質問です。答えはスタックオーバーフローのドキュメントまたは別のスレッドにあると確信していますが、見つかりませんでした。

私はリストを持っています:dict_list = ['first_dict', 'second_dict', 'third_dict']

このリストの各エントリの辞書を作成し、後でそのリストインデックスを使用して参照する方法が必要です。そこで、を参照dict_list[0]して、新しい辞書を作成できるようにしたいと思いますfirst_dict = {}

次に、を使用して後でその辞書を再度参照できるようにしdict_list[0]、次にキーと値をfirst_dictに割り当てます。

これdict_listには、1から1000のエントリが含まれます。

4

2 に答える 2

3

何の名前が必要ですか?答えは、あなたはしません。プログラムで一連の変数名を割り当てることを検討し始めるとき、特にそれらの名前に番号が含まれている場合は、ほとんどの場合、リストまたはその他のコンテナーを作成する方がよいでしょう。

dict_list = [{} for x in xrange(3)]

dict_list[0]は1つの辞書でdict_list[1]あり、別の辞書です。globals()これにより、やのようなハッカーなしで、繰り返してアクセスするのが簡単になりますeval()

于 2012-10-27T17:10:16.707 に答える
0

あなたが使用することができますglobals()

In [54]: dict_list = ['first_dict', 'second_dict', 'third_dict']

In [55]: for x in dict_list:
    globals()[x]=dict()
   ....:     
   ....:     

In [57]: dict_list=[globals()[x] for x in dict_list]

In [58]: dict_list[0]['key']='value'  #add key to first_dict 

In [60]: first_dict       
Out[60]: {'key': 'value'}

In [63]: first_dict is dict_list[0]  #dict_list[0] and first_dict are same objects
Out[63]: True
于 2012-10-27T17:11:10.190 に答える