特集
» 2016年09月09日 05時00分 公開

Python Tools for Visual Studioのセットアップ特集:Visual Studioで始めるPythonプログラミング(2/2 ページ)

[かわさきしんじ,Insider.NET編集部]
前のページへ 1|2       

Pythonコンソールアプリ

 Pythonのコンソールアプリプロジェクトを新規に作成するといっても、通常のVSの操作と変わらない。[新しいプロジェクト]ダイアログでテンプレートを指定するだけだ。今回は[Python Application]を選択している。画像を見れば分かる通り、PTVSをインストールすると、PythonでWebアプリを開発するためのテンプレートが利用できるようになる(これらについては次回以降に見ていこう)。

[新しいプロジェクト]ダイアログ [新しいプロジェクト]ダイアログ

 作成直後のソリューションエクスプローラーを以下に示す。

Pythonのコンソールアプリプロジェクト作成直後のソリューションエクスプローラー Pythonのコンソールアプリプロジェクト作成直後のソリューションエクスプローラー

 特徴的なのは[Python Environments]という項目だ。ここには現在のデフォルトのPython環境が表示される(切り替えるには、上述したように[Python Environments]ウィンドウを使用する)。[Search Paths]にはPythonが検索するパスやZIPアーカイブを指定できるが、本稿では利用しない。プロジェクトで特定のディレクトリやZIPアーカイブ中のファイルを参照したい場合にこれを利用する。

 詳細は割愛するが、以下では「mymodule」というモジュールを新規に作成し(mymodule.pyファイル)、そこで定義されている2つの関数をPythonApplication1.pyファイルでインポートしている。

 mymodule.pyファイルの内容は次の通りだ。

def fact(n):
  if (n <= 1):
    return 1
  else:
    return n * fact(n-1)

def fib(n):
  if (n < 0):
    return -1
  elif(n == 0):
    return 0
  elif (n == 1):
    return 1
  else:
    return fib(n-2) + fib(n-1)


階乗とフィボナッチ数を求める関数を定義しているモジュール(mymodule.pyファイル)

 やっていることは単純なのでコードの説明は割愛する。PythonApplication1.pyファイルのコードは次の通りだ。

import sys
from mymodule import fact, fib

print(sys.version)
print("factorial of 3 is {0}".format(fact(3)))

for n in range(7):
  print("fib({0}) is {1}".format(n,fib(n)))


mymoduleモジュールからfact関数とfib関数をインポート(PythonApplication1.pyファイル)

 mymoduleモジュール(の2つの関数)に加えて、先ほど使ったsysモジュールもインポートしている(「from モジュール import 識別子」によるインポートを行うことで、モジュール名を省略してインポートした識別子を利用できていることに注目)。「format」メソッドは出力の書式化を行うために使用している。Pythonでは「"sum: " + 100」のようにして文字列と数値を「暗黙的」に連結することは許されていないために、このように書式化を行うか、str(...)のようにして文字列を取得してから連結を行う必要がある。なお、最近はやりの文字列補間機構はPython 3.6でお目見えの予定だ。

 これをデバッグ実行すると次のような結果になる。

3.5.2 |Anaconda 4.1.1 (64-bit)| (default, Jul  5 2016, 11:41:13) [MSC v.1900 64 bit (AMD64)]
factorial of 3 is 6
fib(0) is 0
fib(1) is 1
fib(2) is 1
fib(3) is 2
fib(4) is 3
fib(5) is 5
fib(6) is 8


実行結果

 先ほど見たように、[Python Environment]が[Python 64-bit 3.5]になっているので、「print(sys.version)」呼び出しの結果がAnacondaのものになっている。デフォルトのPython環境を変更すれば、この結果は異なるものになる。

 開発環境がVSである以上、ブレークポイントを設定すれば、ステップ実行も可能だ。

ブレークポイントでプログラムの実行が中断されたところ ブレークポイントでプログラムの実行が中断されたところ

 VSが誇るIntelliSenseや高度なデバッグ機構をPythonプログラミングにおいても活用できるのはうれしいところだ。

環境の構成

 [Python Environments]ウィンドウのドロップダウン(横長表示の場合は中央のペーン)には構成/一覧表示が可能な項目が表示される。デフォルトでは[Overview]が選択されており、ウィンドウ上部にあるリストボックスで選択している環境の概要が表示される。

選択した環境の概要 選択した環境の概要

 [Overview]ページに表示されるのは以下のものだ。

  • デフォルトの環境かどうか
  • [Interactive]ウィンドウを開く
  • [Interactive]ウィンドウの構成画面を開く
  • 環境のインストール先ディレクトリ/pythonコマンド/pythonwコマンドのパス

 [Interactive]ウィンドウの表示については上で試した通りだ。[Configure interactive window]をクリックすると、[オプション]ダイアログに[Interactive]ウィンドウの構成画面が表示される。

[オプション]ダイアログ [オプション]ダイアログ

 ここでは[Interactive]ウィンドウ起動時に実行するスクリプトの指定、ウィンドウのモードの指定、その他の構成が行える。後者の「モード」というのは標準の[Interactive]ウィンドウを使用するか、IPythonと呼ばれるより高度な機能を持つPythonシェルを利用するかなどを指定可能だ(IPythonについては回をあらためて紹介しよう)。

 インストール先のディレクトリとpythonコマンドのリンクをクリックすると、フォルダエクスプローラー/コマンドプロンプトが表示されるので、ディレクトリをブラウズしたり、直接コマンドプロンプトからpythonコマンドを実行したりしたい場合に便利に使える。

 ドロップダウンから[pip]を選択すると、その環境にインストールされているパッケージが一覧表示される(pipはPython用の代表的なパッケージ管理ツール)。検索ボックスに検索語を入力すれば、PyPI(the Python Package Index。Python用のパッケージのリポジトリ)でのパッケージの検索とインストールも可能だ。

選択した環境にインストールされているパッケージの表示 選択した環境にインストールされているパッケージの表示
ここでは[Python 3.5]環境にインストールされているパッケージが表示されている。[Python 64-bit 3.5](Anaconda)ではこれよりもはるかに多くのパッケージが標準でインストールされている。

 ドロップダウンから[IntelliSense]を選択すると、IntelliSenseが認識しているPythonモジュールが表示される。

 インストールしているPython処理系が認識されていない、あるいは独自の環境設定を行いたい場合には[+Custom]をクリックする。これにより、新しい環境の作成ページが表示される。

新規環境の作成 新規環境の作成


 本稿ではPTVSの概要と[Interactive]ウィンドウによるPythonの対話的実行、簡単なアプリの作成と実行、PTVSの設定について見てきた。次回は、Pythonプログラミングの基礎知識について見ていくことにしよう。

「特集:Visual Studioで始めるPythonプログラミング」のインデックス

特集:Visual Studioで始めるPythonプログラミング

前のページへ 1|2       

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。