d = {}
Pycharmのコードインスペクターで辞書を初期化すると、次のような警告が表示されます。
この辞書の作成は、辞書リテラルとして書き直すことができます。
書き換えればd = dict()
警告は消えます。以来{}
、すでにある辞書リテラル、私はかなり確信してメッセージが誤っていますよ。さらに、それは両方のようでありd = {}
、d = dict()
有効かつPythonicです。
この関連する質問は、選択はスタイル/好みの問題であると結論付けるようです: "d = dict()"と "d = {}"の違い
Pycharmが不満を言うのはなぜd = {}
ですか?
更新:
マックはそれを釘付けにした。警告は実際には、フラグが付けられた行だけでなく、複数の行に適用されました。
Pycharmは、辞書を初期化してから辞書に値を設定する一連の連続したステートメントを探しているようです。たとえば、これは警告をトリガーします。
d = {}
d['a'] = 1
しかし、このコードはしません:
d = {}
pass
d['a'] = 1
something
属性の値を割り当てるのではなく、dictリテラルに直接入力できることを示唆しています次の行で。