2012-02-28 8 views
1

辞書クラスを文字列に変換する方法が本当に好きだったので、__repr__メソッドをオーバーライドするサブクラスを作成しました(このメソッドはタブを使用してレベルを表します)。辞書に入れ子になっています。なぜなら、非常に大きくて最後にmyDic['a']['b']['c']['d'] = someObjectという辞書があるからです。組み込みクラス、特に辞書クラスをオーバーライド

正常に動作しますが、{}という構文を使用して辞書を作成することはできません。

{}構文を使用して独自のカスタム辞書を作成できるように、dictクラスをオーバーライドすることはできますか?

私はPython 2.6/2.7を使用しています。

+1

[{...}表記をオーバーライドすることができますので、dict()の代わりにOrderedDict()を使用できますか?]](http://stackoverflow.com/questions/7878933/is-possible-今のところpprintで遊んでいる –

答えて

1

{}の構文を上書きすることはできません。クラス名を使用して明示的に変数を構築する必要があります。

もっと印刷したい場合は、pprint.pprintで十分でしょうか?

+0

は有望だと思われます。私は基本的にpprint(myDict、width = 1)だったと思います – scruffyDog

関連する問題