このクイック スタートでは、Visual Studio の Flask フレームワークに基づいて Python Web アプリケーションを作成します。 プロジェクトは、Visual Studio の基本的な機能について学習するのに役立つ個別の手順を使用して作成します。 プロジェクト項目の作成、コードの追加、アプリケーションの実行方法について説明します。
Visual Studio をインストールする必要がある場合は、 Visual Studio のダウンロード に移動して無料でインストールします。 インストーラーで、 Python 開発 ワークロードを選択します。
Visual Studio をインストールする必要がある場合は、 Visual Studio のダウンロード に移動して無料でインストールします。 Visual Studio インストーラーで、 Python 開発 ワークロードを選択します。 インストールの詳細ウィンドウで、 Python Web サポートを選択します。
プロジェクトを作成する
次の手順では、アプリケーションのコンテナーとして機能する空のプロジェクトを作成します。
Visual Studio を開きます。 スタート画面で、[ 新しいプロジェクトの作成] を選択します。
[ 新しいプロジェクトの作成 ] ダイアログボックスで、検索ボックスに 「Python Web 」と入力します。 結果の一覧で [ Web プロジェクト] を選択し、[ 次へ] を選択します。
Python プロジェクト テンプレートが表示されない場合は、 Visual Studio インストーラーを実行します。 インストーラーで、[ その他>Modify] を選択し、 Python 開発 ワークロードを選択して、[ 変更] を選択します。
Python Web プロジェクト テンプレートが表示されない場合は、 ツール>Get Tools and Features を選択して Visual Studio インストーラーを実行します。 インストーラーで、 Python 開発 ワークロードを選択します。 [ インストールの詳細] で、[ Python Web サポート] を選択し、[ 変更] を選択します。
[新しいプロジェクトの構成] ダイアログで、[プロジェクト名] に「HelloPython」と入力し、プロジェクトの場所を指定して、[作成] を選択します。
ソリューション エクスプローラーで新しいプロジェクトが開きます。 ソリューション名は、プロジェクト名と一致するように自動的に設定されます。 ファイルが含まれていないため、新しいプロジェクトは空です。
Visual Studio のプロジェクトとソリューション
Python アプリケーション用の Visual Studio でプロジェクトを作成することには利点があります。 Python アプリケーションは通常、フォルダーとファイルのみを使用して定義されますが、アプリケーションが大きくなると、この単純な構造が負担になる可能性があります。 アプリケーションには、自動生成されたファイル、Web アプリケーション用の JavaScript、およびその他のコンポーネントが含まれる場合があります。 Visual Studio プロジェクトは、この複雑さを管理するのに役立ちます。
プロジェクトは .pyproj ファイルで識別され、プロジェクトに関連付けられているすべてのソース ファイルとコンテンツ ファイルが識別されます。 .pyproj ファイルには、各ファイルのビルド情報が含まれており、ソース管理システムと統合するための情報が保持され、アプリケーションを論理コンポーネントに整理するのに役立ちます。
Visual Studio ソリューションは、1 つ以上の関連プロジェクトをグループとして管理するのに役立つコンテナーです。 ソリューション エクスプローラーにソリューションが表示 されます。 ソリューションには、プロジェクトに固有ではない構成設定が格納されます。 ソリューション内のプロジェクトは、相互に参照することもできます。 たとえば、Python アプリ プロジェクトを実行すると、Python アプリで使用される C++ 拡張機能など、2 つ目のプロジェクトを自動的にビルドできます。
Flask ライブラリをインストールする
Python の Web アプリは、ほとんどの場合、Web 要求のルーティングや応答の整形などの低レベルの詳細を処理するために、利用可能な多くの Python ライブラリの 1 つを使用します。 Visual Studio には、Web アプリ用のテンプレートが多数用意されています。 このクイック スタートの後半で、これらのテンプレートのいずれかからプロジェクトを作成します。
次の手順を使用して、Visual Studio がこのプロジェクトに使用する既定の グローバル環境 に Flask ライブラリをインストールします。
プロジェクトの [Python 環境] ノードを展開して、プロジェクトの既定の環境を表示します。
環境を右クリックし、[ Python パッケージの管理] を選択します。 このコマンドを実行すると、パッケージ (PyPI) タブの [Python 環境] ウィンドウが開きます。
検索フィールドに Flask を入力します。
Flask コマンドが検索ボックスの下に表示される場合、Flask はシステム上に既に存在します。 次の手順に進みます。
Flask コマンドが検索ボックスの下に表示されない場合は、[コマンドの実行: pip install flask] を選択します。
グローバル環境パッケージ フォルダーが C:\Program Files などの保護された領域にある場合は、昇格プロンプトが表示されます。 管理者特権のプロンプトを受け入れます。 Visual Studio の [出力] ウィンドウで進行状況を確認できます。
Flask をインストールすると、 ソリューション エクスプローラーの環境にライブラリが表示されます。 Python コードで Flask コマンドを使用できるようになりました。
注
通常、開発者はグローバル環境にライブラリをインストールする代わりに、特定のプロジェクトのライブラリをインストールする 仮想環境 を作成します。 Visual Studio テンプレートには、通常、「 クイック スタート - テンプレートを使用して Python プロジェクトを作成する」の説明に従って、このオプションが用意されています。
その他の使用可能な Python パッケージの詳細については、 Python パッケージ インデックスを参照してください。
コード ファイルを追加する
これで、最小限の Web アプリケーションを実装するための Python コードを追加する準備ができました。
ソリューション エクスプローラーでプロジェクトを右クリックし、[追加>新しい項目] を選択します。
[ 新しい項目の追加] ダイアログで、[ 空 の Python ファイル] オプションを選択します。
app.py ファイル名を入力し、[追加] を選択 します。 Visual Studio によって、エディター ウィンドウでファイルが自動的に開きます。
次のコードをコピーし、 app.py ファイルに貼り付けます。
from flask import Flask # Create an instance of the Flask class that is the WSGI application. # The first argument is the name of the application module or package, # typically __name__ when using a single module. app = Flask(__name__) # Flask route decorators map / and /hello to the hello function. # To add other resources, create functions that generate the page contents # and add decorators to define the appropriate resource locators for them. @app.route('/') @app.route('/hello') def hello(): # Render the page return "Hello Python!" if __name__ == '__main__': # Run the app server on localhost:4449 app.run('localhost', 4449)
[ 新しい項目の追加] ダイアログには、Python クラス、Python パッケージ、Python 単体テスト、web.configファイルなど、Python プロジェクトに追加できる他の多くの種類 の ファイルが表示されます。 一般に、これらの 項目テンプレート は、便利な定型コードを使用してファイルをすばやく作成するための優れた方法です。
Flask の詳細については、 Flask クイック スタートを参照してください。
アプリケーションを実行する
Web アプリケーションを実行するには、次の手順に従います。
ソリューション エクスプローラーで、app.py ファイルを右クリックし、[スタートアップ ファイルとして設定] を選択します。 このコマンドは、アプリの実行時に Python で起動するコード ファイルを識別します。
ソリューション エクスプローラーでプロジェクトを右クリックして、 [プロパティ] を選択します。
[ プロパティ ] ダイアログの [ デバッグ ] タブで、[ ポート番号 ] プロパティを [
4449
に設定します。 この設定により、コード内のapp.run
引数と一致するlocalhost:4449
でブラウザーが Visual Studio によって起動されます。Visual Studio で、[ デバッグ>デバッグなしで開始 ] を選択するか、 Ctrl+F5 を選択します。これにより、ファイルへの変更が保存され、アプリが実行されます。
コマンド ウィンドウが開き、 "running in https://localhost:4449"" というメッセージが表示されます。 ブラウザー ウィンドウが開き、
localhost:4449
され 、"Hello, Python!" というメッセージが表示されます。GET
要求もコマンド ウィンドウに表示され、状態は "200" になります。ブラウザーが自動的に開かない場合は、任意のブラウザーを開き、
localhost:4449
に移動します。コマンド ウィンドウに Python 対話型シェルのみが表示される場合、またはそのウィンドウが画面で短時間点滅する場合は、 app.py ファイルがスタートアップ ファイルとして設定されていることを確認します。
ブラウザー ウィンドウで、
localhost:4449/hello
に移動して、/hello
リソースのデコレーターも機能することをテストします。ここでも、
GET
要求がコマンド ウィンドウに表示され、状態 は "200" になります。他の URL も試して、コマンド ウィンドウに "404" 状態コードが表示されることを確認します。
コマンド ウィンドウを閉じてアプリを停止し、ブラウザー ウィンドウを閉じます。
デバッグの有無にかかわらず開始する
デバッグを有効にするか、有効にせずにアプリを実行できます。 これらのオプションの違いを次に示します。
[デバッグの開始] コマンドは、Visual Studio デバッガーのコンテキストでアプリを実行します。 デバッガーを使用すると、ブレークポイントを設定したり、変数を調べたり、コードを 1 行ずつステップ実行したりできます。 デバッグを可能にするフックが原因で、デバッガーでアプリの実行速度が低下する可能性があります。
[デバッグなしで開始] コマンドを使用すると、コマンド ラインからアプリを実行する場合と同様に、デバッグ コンテキストなしでアプリを直接実行できます。 また、このコマンドはブラウザーを自動的に起動し、プロジェクトの [プロパティ>デバッグ ] タブで指定された URL を開きます。