0

Pythonで整数とdefaultdictのリストを定義したいと思います。上記のリストを返す親辞書を作成しています。

リストタイプを定義できません。

def index_struct():return defaultdict(list_struct)
def list_struct(): return list(int,post_struct)
def post_struct(): return defaultdict(list)

リストは2つの引数を取ることができないため、現在エラーが発生しています。

事前に助けてくれてありがとう

4

1 に答える 1

2

list()が 1 つの引数しかとらないことは正しいです。代わりに角括弧表記を使用してください。[int, post_struct]また、何も 2 つのコンストラクターを呼び出していないため、 が機能しないことに注意してください。括弧を追加して、コンストラクターを手動で呼び出す必要があります。

from collections import defaultdict

def index_struct():return defaultdict(list_struct)
def list_struct(): return [int(), post_struct()]
def post_struct(): return defaultdict(list)

>>> d = index_struct()
>>> d['somekey'][0] = 5
>>> d['somekey'][1]['anotherkey'] = 6
>>> d
defaultdict(<function list_struct at 0x10252ff50>, {'somekey': [5, defaultdict(<type 'list'>, {'anotherkey': 6})]})
于 2013-02-08T03:43:05.967 に答える