【VSCode】botostubsで Boto3の入力支援を強化する

2020.01.28

Microsoft Visual Studio Code(VSCode) のお手軽で素晴らしい入力支援機能には お世話になっています。 AWS CDKのコーディングがとても捗ります。

さて、今更 Boto3を VSCodeで触り始めたのですが、 まず思ったのは 入力支援強化したいなあ です。

▲ 何も出てこない…


調べてみると以下のような記事がありました。

botostubs という Pythonモジュールを使うことで入力支援を強化できるとのこと。

早速入れて 使ってみました。

目次

  1. 環境
  2. セットアップ
  3. 試してみる
  4. おわりに

環境

  • VSCode: 1.41.1
  • Python: 3.7.3
  • pip3: 20.0.2
  • boto3: 1.11.9
  • 今回入れた botostubs: 0.12.1.11.9

セットアップ

使用するための手順はざっくり以下の通りです。

  1. VS Code のインストール
  2. VS Code の Python extension のインストール
  3. boto3 のインストール
  4. botostubs のインストール
  5. "Python: Jedi Enabled" を Falseに

上 3つはすでに入っているので今回は割愛します。

botostubs のインストール

pip3 install botostubs を実行します。

Python: Jedi Enabled" を Falseに

今現在、これにチェックが入っていると botostubsがうまく機能しないとのこと。

「設定」から "Jedi" などと検索して、 Python: Jedi Enabled にチェックが入っている場合は外します。

試してみる

import boto3
import botostubs

s3: botostubs.S3 = boto3.client('s3')

(2行目) import botostubs でインポートした後に、 (4行目) s3: botostubs.S3 = xxx のように型アノテーションをつけて宣言します。

s3. まで打ってみます。

S3.Client で使用できるメソッド一覧が見れました。

他、引数名などの補完も問題なくできるみたいです。

おわりに

botostubsを入れてざっくり触ってみました。

やったこととしては、botostubsの インポートと型アノテーションの追加ぐらいです。 それで入力支援機能を利用できるのはとても便利、イイね!と思いました。

この記事が少しでもどなたかのお役に立てば幸いです。