LoginSignup
0
0

Enum x Dictionaryのインテリセンスが効かない?【Python】

Last updated at Posted at 2021-03-09

おやまあ

なんということでしょう?

image.png

インテリセンスが効かないではありませんか。
これは一大事です。サボれません。

なに書いてるの?

charactersという列挙型を用意しています。
値はモンキーのジョージ、ネズミのミッキー、キャットのトムです。

この列挙型を使って、倉庫にストックされているキャラクターどもの台帳を作ろうとしています。
その台帳が、GarageStockDictionaryです。早く帰って寝たいので急いで台帳を仕上げましょう。

いま、猫が4匹というところまで書いたのですが、次のモンキーを書くときに、
インテリセンスが効かないことが分かりました。ぬに?それはいかん!

もう少し

様子見で、続きを書いてみたら認識してくれるかもしれませんよね。
きっとそうですよね?

image.png

あれあれ?上手くいきませんね。これは、残業か?

それでは

とにかく最後まで書いてみましょうか。やってみてから考えましょう。

image.png

シンタックスハイライトは効くようですね。カラフル嬉しい。
しかし、インテリセンスが欲しいところです。書くのダルイし。

なんだって?

ちょっと、改行してみますか。見やすいし。

image.png

あれ?改行したらインテリセンスが効くではないですか。
と思ったら、monkeyとかmousecatが出てこない!

  1. 先に、11行目を12行目にコピペして、
    valueのほうまである状態にする。
  2. .catを消す
  3. .を入力

だと出ますね。インテリセンス。ああ面倒。

まとめ

暫定対策としては、「先に前後を書けばインテリセンスが効くっぽい。」ですね。
これが重要な仕様なのか、バグなのか。要調査です。

環境

Python 3.9.1 | packaged by conda-forge | (default, Jan 10 2021, 02:50:22) [MSC v.1916 64 bit (AMD64)] on win32

.vscode\extensions.json
{
	"recommendations": [
		"ms-python.vscode-pylance",
		"ms-python.python",
		"visualstudioexptteam.vscodeintellicode",
		"oderwat.indent-rainbow",
		"kameshkotwani.google-search",
		"coenraads.bracket-pair-colorizer-2"
	]
}
.vscode\settings.json
{
    "python.testing.pytestEnabled": true,
    "python.formatting.provider": "black",
    "python.envFile": "${workspaceFolder}/.env",
    // "python.languageServer": "Pylance"
}

Excelsior!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0