クイック スタート: Visual Studio のテンプレートから Python プロジェクトを作成する

適用対象:yesVisual Studio noVisual Studio for Mac noVisual Studio Code

Visual Studio に Python のサポートをインストールすると、さまざまなテンプレートを使用して新しい Python プロジェクトを簡単に作成できます。 このクイック スタートでは、テンプレートを利用し、簡単な Flask アプリを作成します。 結果的に生成されるプロジェクトは、「クイック スタート - Flask での Web アプリの作成」で手動で作成するプロジェクトに似ています。

  1. Visual Studio を起動します。

  2. 一番上にあるメニュー バーから、 [ファイル]>[新規]>[プロジェクト] の順に選択し、 [新しいプロジェクト] ダイアログで "blank flask" を検索し、真ん中の一覧にある Blank Flask Web Project テンプレートを選択します。プロジェクトに名前を付け、 [OK] を選択します。

    Screenshot of creating a new project with the Blank Flask Web Project template.

  3. Visual Studio に "このプロジェクトには外部パッケージが必要です" というダイアログが表示されます。このダイアログは、Flask に対する依存性を指定する requirements.txt ファイルがテンプレートに含まれているために表示されます。 Visual Studio では、パッケージを自動的にインストールできます。また、"仮想環境" へのインストールを選択できます。 仮想環境の利用はグローバル環境にインストールすることよりも推奨されます。[Install into a virtual environment](仮想環境にインストールする) を選択して続行してください。

    Screenshot of installing Flask into a virtual environment.

  4. Visual Studio に [仮想環境の追加] ダイアログが表示されます。 既定値をそのままにして [作成] を選択します。昇格要求があればそれに同意します。

    ヒント

    プロジェクトを開始するとき、すぐに仮想環境を作成することを強くお勧めします。ほとんどの Visual Studio テンプレートでそのように勧められます。 仮想環境では、時間の経過と共にライブラリを追加したり、削除したりしても、プロジェクトの厳密な要件が維持されます。 そのため、requirements.txt ファイルを簡単に生成できます。このファイルを利用し、(ソース管理を利用するとき) 他の開発コンピューターにそれらの依存関係を再インストールします。また、運用サーバーにプロジェクトを展開するときに再インストールします。 仮想環境とその長所については、「仮想環境を使用する」と「requirements.txt での必須パッケージの管理」をご覧ください。

  5. Visual Studio によってその環境が作成されたら、ソリューション エクスプローラーを調べて、requirements.txt と共に app.py ファイルが指定されていることを確認します。 app.py を開き、「クイック スタート - Flask での Web アプリの作成」のものと似たコードがテンプレートによって指定されており、セクションがいくつか追加されていることを確認します。 ここで示すコードはすべてテンプレートによって作成されるため、ユーザーが自分で app.py に貼り付ける必要はありません。

    コードは次のように必要なインポートで始まります。

        from flask import Flask
        app = Flask(__name__)
    

    次の行は、アプリを Web ホストに展開するときに便利です。

        wsgi_app = app.wsgi_app
    

    その後に、ビューを定義する単純な関数のルート デコレーターが続きます。

        @app.route('/')
        def hello():
        """Renders a sample page."""
        return "Hello World!"
    

    最後に、以下のスタートアップ コードを使用すると、ハードコーディングするのではなく、環境変数によってホストとポートを設定できます。 このようなコードによって、コードを変更することなく、開発コンピューターと運用コンピューターの両方で構成を簡単に制御できます。

        if __name__ == '__main__':
        import os
        HOST = os.environ.get('SERVER_HOST', 'localhost')
        try:
        PORT = int(os.environ.get('SERVER_PORT', '5555'))
        except ValueError:
        PORT = 5555
        app.run(HOST, PORT)
    
  6. [デバッグ]>[デバッグなしで開始] を選択し、アプリを実行してブラウザーで localhost:5555 を開きます。

  1. Visual Studio を開始し、上部のメニュー バーから [ファイル]>[新規作成]>[プロジェクト] を選択します。 次に、 [新しいプロジェクト] ダイアログで "blank flask" を検索し、一覧から [Blank Flask Web プロジェクト] テンプレートを選択して、 [次へ] を選択します。

    Screenshot of creating a new project with the Blank Flask Web Project template.

  2. Visual Studio のプロジェクト構成ダイアログが表示されるので、プロジェクトの名前を指定して、 [作成] を選択します。

    Screenshot of configure the new project fields with a name and desired location.

  3. Visual Studio に "このプロジェクトには外部パッケージが必要です" というダイアログが表示されます。このダイアログは、Flask に対する依存性を指定する requirements.txt ファイルがテンプレートに含まれているために表示されます。 Visual Studio では、パッケージを自動的にインストールできます。また、"仮想環境" へのインストールを選択できます。 仮想環境の利用はグローバル環境にインストールすることよりも推奨されます。[Install into a virtual environment](仮想環境にインストールする) を選択して続行してください。

  4. Visual Studio に [仮想環境の追加] ダイアログが表示されます。 既定値をそのままにして [作成] を選択します。昇格要求があればそれに同意します。

    Screenshot of installing Flask into a virtual environment.

    ヒント

    プロジェクトを開始するとき、すぐに仮想環境を作成することを強くお勧めします。ほとんどの Visual Studio テンプレートでそのように勧められます。 仮想環境では、時間の経過と共にライブラリを追加したり、削除したりしても、プロジェクトの厳密な要件が維持されます。 そのため、requirements.txt ファイルを簡単に生成できます。このファイルを利用し、(ソース管理を利用するとき) 他の開発コンピューターにそれらの依存関係を再インストールします。また、運用サーバーにプロジェクトを展開するときに再インストールします。 仮想環境とその長所については、「仮想環境を使用する」と「requirements.txt での必須パッケージの管理」をご覧ください。

  5. Visual Studio によってその環境が作成されたら、ソリューション エクスプローラーを調べて、requirements.txt と共に app.py ファイルが指定されていることを確認します。 app.py を開き、「クイック スタート - Flask での Web アプリの作成」のものと似たコードがテンプレートによって指定されており、セクションがいくつか追加されていることを確認します。 ここで示すコードはすべてテンプレートによって作成されるため、ユーザーが自分で app.py に貼り付ける必要はありません。

    コードは次のように必要なインポートで始まります。

    from flask import Flask
    app = Flask(__name__)
    

    次の行は、アプリを Web ホストに展開するときに便利です。

        wsgi_app = app.wsgi_app
    

    その後に、ビューを定義する単純な関数のルート デコレーターが続きます。

        @app.route('/')
        def hello():
        """Renders a sample page."""
        return "Hello World!"
    

    以下のスタートアップ コードが示され、ハードコーディングするのではなく、環境変数によってホストとポートを設定できます。 このようなコードによって、コードを変更することなく、開発コンピューターと運用コンピューターの両方で構成を簡単に制御できます。

        if __name__ == '__main__':
        import os
        HOST = os.environ.get('SERVER_HOST', 'localhost')
        try:
        PORT = int(os.environ.get('SERVER_PORT', '5555'))
        except ValueError:
        PORT = 5555
        app.run(HOST, PORT)
    
  6. [デバッグ]>[デバッグなしで開始] を選択し、アプリを実行してブラウザーで localhost:5555 を開きます。

質問: Visual Studio には他にどのような Python テンプレートがありますか。

回答: Python ワークロードをインストールすると、Visual Studio にはさまざまなプロジェクト テンプレートが用意されます。Flask、Bottle、Django Web フレームワーク、Azure クラウド サービス、さまざまな機械学習シナリオのためのテンプレートなどがあります。Python アプリを含む既存のフォルダー構造からプロジェクトを作成するテンプレートまであります。 これらのテンプレートには、 [ファイル]>[新規作成]>[プロジェクト] ダイアログ ボックスで [Python] 言語ノードとその子ノードを選択することでアクセスします。

Visual Studio は、Python クラス、Python パッケージ、Python 単体テスト、web.config ファイルなどを簡単に作成するためのさまざまなファイルや "項目テンプレート" も備えています。 Python プロジェクトを開いているとき、 [プロジェクト]>[新しい項目の追加] メニュー コマンドから項目テンプレートにアクセスできます。 項目テンプレートのリファレンスを参照してください。

プロジェクトを開始するときやファイルを作成するときは、テンプレートを使用すると時間を大幅に節約できます。 また、さまざまなアプリの種類とコードの構造について学習する優れた方法でもあります。 さまざまなテンプレートからプロジェクトや項目を数分で作成できるということは、そのように作成したものでできることを知る上で便利なことです。

質問: Cookiecutter テンプレートも使用できますか。

回答: はい。 実際のところ、Visual Studio は Cookiecutter と直接統合できます。これについては、「クイック スタート: Cookiecutter テンプレートからプロジェクトを作成する」で学習できます。

次のステップ

関連項目