[解決済み】Pycharmのインスペクタで「d = {}」と文句を言われるのはなぜ?}
2022-04-11 18:49:33
質問
で辞書を初期化する場合
d = {}
Pycharm のコードインスペクタは、次のような警告を発生させます。
この辞書の作成は、辞書リテラルとして書き換えることができます。
書き換えた場合
d = dict()
という警告が消えます。というのも
{}
すでに
は
が辞書のリテラルである場合、そのメッセージは間違いなく誤りです。さらに、それは両方のようです
d = {}
と
d = dict()
は有効であり、Pythonicである。
この関連する質問では、選択は単にスタイル/好みの問題であると結論付けているようです。 d = dict()" と "d = {}" の違いについて。
なぜPycharmは
d = {}
?
UPDATE
Macが釘付けになりました。警告は、フラグが立った1行だけでなく、実際には複数の行に適用されていました。
Pycharmは、辞書を初期化し、辞書に値を設定するような連続したステートメントを検索するようです。例えば、このような場合、警告が発生します。
d = {}
d['a'] = 1
しかし、このコードではそうならない。
d = {}
pass
d['a'] = 1
解決方法は?
辞書の宣言に次のコードを追加してください。
のようなものがあると、PyCharmはエラーを起こすと思います。
dic = {}
dic['aaa'] = 5
と書くことができます。
dic = {'aaa': 5}
注意: この関数を使うとエラーがなくなるということは、必ずしもpycharmが
dict()
はリテラルです。それは、単に、文句を言わないという意味かもしれません。
dic = dict()
dic['aaa'] = 5
関連
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] なぜlist.join(string)ではなくstring.join(list)なのでしょうか?
-
[解決済み] と'is'のどちらかを使って文字列を比較すると、異なる結果になることがあるのはなぜですか?
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PicgoのイメージベッドツールをPythonで実装する
-
Pythonを使って簡単なzipファイルの解凍パスワードを手作業で解く
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み] _tkinter.TclError: 表示名がなく、$DISPLAY環境変数もない。
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み] 'DataFrame' オブジェクトに 'sort' 属性がない
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].