Python+Visual Studioで簡単アプリ開発

Pythonを開発するツールとしての「Visual Studio」を紹介します。
Visual StudioはWindowsで有名なMicroSoftさんが作った統合開発環境です。大変に高機能であり、入力補完やエラーのチェック、デバッグ起動がとても簡単にできます。もちろん無料で使うことができます。
また、OSがWindowsである点も評価できます。いちいちMacに買い替える必要がありません。プログラミング初心者の方にとってとてもありがたいツールかと思います。

この記事では、Anaconda + Visual StudioでPythonアプリ開発をするための環境構築の方法と簡単なコンソールアプリの開発例について記載しています。
この組み合わせならば、単純なアプリの作成ができるのはもちろん、データ分析を絡めたアプリの開発もできるのではないかと思います。

 
この記事では簡単なデータ分析アプリを作成しますが、Python+Visual Studioの組み合わせは様々な応用がききます。
Flaskという軽量で使いやすいWebフレームワークを使ってアプリを作成する記事も良ければ参照してください。

関連する記事
 

スポンサードリンク




スポンサードリンク


目次

  1. Visual Studioのインストール
  2. Visual Studioのセットアップ
  3. Python環境の構築
  4. 簡単なバッチアプリケーションの開発

 

1.Visual Studioのインストール

Python開発ツールは、Visual Studio2015、または2017に入っています。

★2017年5月24日追記
Preview版ではなく、正式版でも、Pythonの開発ができるようになりました。
以下のURLからVisual Studio2017をダウンロードしてください。
インストールの方法はPreview版と同じです。この記事の記載通りにインストールしていただいて支障ありません。
なお、いくつかのバージョンが出てきますが「Community」を選んでください。これが無料バージョンです。

https://www.visualstudio.com/ja/downloads/

インストールする際、以下のように設定をしました。
なお、管理人はすでにAnacondaが入っている状態ですので、Anacondaのインストールに関してはチェックを外しています。
必要に応じて変更してください。

 

2.Visual Studioのセットアップ

Visual Studioがインストールされたら、左上にあるメニューの「ファイル」~「新規作成」~「プロジェクト」を選択し、新規のプロジェクトを作成します。
Visual Studioでは、プロジェクトという単位でアプリを開発します。最初のうちは、とりあえず新しいことを始めようと思ったらプロジェクトを新規作成すればいいんだと思っておいていただいても支障ありません。

下の画面のように、Pythonアプリケーションのプロジェクトを作成します。

なお、Visual Studio2015をすでにお使いの方で、Python開発ツールがインストールされていない場合は、インストールするように指示が来ますので、その通りにしてください。

 

3.Python環境の構築

初回のセットアップ

上部のメニューの「表示」~「その他のウィンドウ」~「Python環境」を選択します。
すると、下の画面が表示されます。

これでAnacondaがインストールされている環境を使用すればOKです。
もし環境がないようでしたら、「+カスタム」というボタンを押して新しく環境を追加します。

なお、Anacondaのインストール先がわからなければ、Windows10であれば、検索ボックス(Cortanaがあるところ)に「Anaconda3」と打てば、探してくれます。
Anacondaがインストールされたフォルダやexeファイルのフルパスなどを指定します。

『Python環境』のウィンドウの「概要」において、「新しいプロジェクトに対する既定の環境です」と表示があることを確認してください。そうなっていない場合は「これを新しいプロジェクトに対する既定の環境にする」をクリックします。
これで準備OK。

なお、セットアップ直後はパソコンが重くなります。管理人のPCでは不安になるくらいファンがブンブン回っていました。インストールされているパッケージの情報などを調べるのにVisualStudioが時間を食うためです。1時間くらい放っておけば、作業が終わって、静かになります。もちろん待つ必要はなく、そのまま作業を進めることもできます。

新しいパッケージをインストールする場合は、いちいちコマンドを打たなくても『Python環境』ウィンドウからインストールできます。
「概要」と書かれているプルダウンを「パッケージ」に変更します。
すると、既にインストールされているパッケージの一覧が出てきます。
ここに直接インストールしたいパッケージの名称を入れればOKです。今回は特に追加せずそのまま進めます。

Pythonのコマンドの実行

『Python環境』においてプルダウンを「概要」にします。
そしてウィンドウの中ほどにある「対話型ウィンドウを開く」をクリックします。すると、画面下部にコードを実行するためのウィンドウが現れます。

下の図のように、コマンドを打ち込むと、実行されます。
コードを書いているときに、簡単な動作確認をするのに便利です。

 

4.簡単なバッチアプリケーションの開発

今回作るアプリ

今回はバッチアプリ、あるいはコンソールアプリと呼ばれるものを作ります。
これは画面が特に出てこず、計算だけが内部で行われるようなアプリだと思ってください。ユーザーが触るボタンなどのUIを作らなくて済むため、簡単に作成できます。

今回作るバッチアプリの機能は以下の通りとします。
・2列のCSVファイルを読み込んで
・seabornというパッケージを用いたきれいなグラフを作り
・そのグラフを保存する

また、読み込むCSVファイルのフルパスと、出力するファイルのフルパスは、バッチ実行時に指定できることとします。
ちょっとしたデータ分析アプリを作ろうということです

処ソリューションエクスプローラの使い方

上のメニューから「表示」~「ソリューションエクスプローラ」を選択すると、以下のような画面が出てきます。

『ソリューションエクスプローラ』の「Python環境」を右クリックすると、Python環境の削除や追加が行えます。
また、初期状態では「PythonApplication1.py」というファイルができているかと思います。
これをダブルクリックすると、エディタが出てきます。
ここにコードを記述していきます。

処理を書く前に

実際の処理を書く前にやることが2つあります。
1つは、文字コードの設定。

★2018年5月19日追記。Python3では、文字コードをいちいち指定しなくても済むようになりました。ここは書かなくても動きます。
『# -*- coding: utf-8 -*-』と記述することで、文字コードを指定できます。
もしも、この文字コードでエラーとなった場合は、以下を試してみてください。『# coding:cp932』

次はライブラリの読み込みです。
ファイルの読み込みや、グラフの描画に必要となるライブラリを全部読み込みます。
なお、これらのライブラリはAnacondaがインストールされている場合は、いつでも使える状態になっているはずです。

全部設記述したら、以下のようになります。
これらはすべて「PythonApplication1.py」に書くようにしてください。

# -*- coding: utf-8 -*-

# 汎用ライブラリ(ファイル操作に使用)
import sys

# データを読み込むのに必要なライブラリ
import numpy as np
import pandas as pd

# グラフを描画するライブラリ
from matplotlib import pyplot as plt
import seaborn as sns
処理を記述する

先ほど、便利なライブラリをたくさん読み込みましたので、処理はかなり少ない記述で記すことができます。

まず、バッチ実行時のコマンドライン引数は『sys.argv』という変数に格納されているため、それを取得します。

# コマンドライン引数
args = sys.argv

inFilePath = args[1] # 入力ファイルのフルパス
outFigPath = args[2] # 出力ファイルのフルパス

入力ファイルのフルパスに従い、CSVファイルを読み込みます。
pandasというライブラリを使えば、一行で読み込みができます。「データフレーム」という型の変数に格納されます。
CSVファイルはヘッダーがついていることを前提とします。
ヘッダーはデータフレームの列名称として使用されます。

# CSVの読み込み
inDataFrame = pd.read_csv(inFilePath)

次はグラフの描画です。
seabornというライブラリを使えば、これまた一行で終わりです。
lmplotという関数の引数に、「Y軸の名称」「X軸の名称」「グラフを描く対象となるデータ」を指定します。『fit_reg』は回帰分析という分析を使う場合にはtrueですが、今回はグラフを描くだけでいいためfalseにしておきました。

inDataFrame.columns[0]などで、データフレームの列名称、すなわちCSVファイルのヘッダーの名称が使用されていることに注意してください。

# グラフの描画
plotInData = sns.lmplot(y = inDataFrame.columns[0], x = inDataFrame.columns[1], data = inDataFrame,fit_reg = False)

最後に、作られたグラフを保存します。

# グラフの保存
plotInData.savefig(outFigPath)

全てのコードをまとめると、こうなります。

# -*- coding: utf-8 -*-

# 汎用ライブラリ(ファイル操作に使用)
import sys

# データを読み込むのに必要なライブラリ
import numpy as np
import pandas as pd

# グラフを描画するライブラリ
from matplotlib import pyplot as plt
import seaborn as sns

# コマンドライン引数
args = sys.argv

inFilePath = args[1]    # 入力ファイルのフルパス
outFigPath = args[2]    # 出力ファイルのフルパス

# CSVの読み込み
inDataFrame = pd.read_csv(inFilePath)

# グラフの描画
plotInData = sns.lmplot(y = inDataFrame.columns[0], x = inDataFrame.columns[1], data = inDataFrame,fit_reg = False)

# グラフの保存
plotInData.savefig(outFigPath)


ファイルを置いておくフォルダの作成

CSVファイルやグラフの画像ファイルを置いておくためのフォルダを作っておきましょう。

Cドライブ直下に、とりあえず「test」という名称でフォルダを作成してください。
ここに、以下のファイルを配置します。
これは、管理人の作った、架空の猫の個体数データです。
1列目が猫の個体数。2列目がえさの数を表しています。

poissonData

コマンドライン引数の設定

バッチ実行時の引数を指定します。バッチ実行時の引数を指定します。

『ソリューションエクスプローラ』の「PythonApplication1」というプロジェクト名称を右クリックしてください。
下の図の赤で囲った部分です。Pythonファイルではなく、プロジェクト名称を右クリックすることに注意してください。

そして、右クリックメニューの「プロパティ」をクリックします。
出てきた「プロパティ」の画面において「デバッグ」をクリックします。
「スクリプトの引数」に、先ほど作成されたフォルダのパスと、入力・出力ファイル名称を指定します。

今回は引数が2つあります。
この場合は、半角スペースで区切って入力します。

入力ファイル・出力ファイルのフルパスは各々以下のようになります。
・C:\test\poissonData.csv
・C:\test\inDataPlot.png

デバッグ実行する

デバッグ実行するのは簡単です。
キーボードの「F5」を押してください。
すると、黒い画面が立ち上がります。

ちょっと待つと、先ほど作った「test」フォルダに、グラフの画像ファイルが出来上がるはずです。
黒い画面に「Press any key to continue . . .」と出ていれば処理終了。
矢印キーなどを押せば画面も消えます。

これで、CSVファイルを読み込んで、グラフを作成する簡単アプリが完成しました。
20~30行くらいで書けるのはPythonの優秀なところだと思います。
そんなPython開発環境としてVisualStudioはなかなか優秀かと思うので、お勧めです。

VisualStudioはPython以外にも、C#やVisual Basicなど様々な言語に対応しています。
使い慣れると強力なツールになるでしょう。

 

参考文献


Python入門[2&3対応]

 
Pythonの入門書は数多くあるのですが、管理人はこれを読みました。
そこそこ分厚いのですが、章ごとに独立しており、気が向いた時に気が向いた場所を読むことができます。
Pythonの基礎文法を学ぶにはいいと思います。辞書のように使うのが良いでしょうか。
 

pythonチュートリアル

 
こちらはやや薄いpythonの入門書です。
薄いので説明はあまり丁寧ではありませんが、「チュートリアル」の名の通り、pythonを使って何ができるのかがざっとわかる構成となっています。
C#などを使われていて、python始めようか、と思われている方などにお勧めです。
 

Think Stats 第2版 ―プログラマのための統計入門

 
Pythonでデータ分析をするための入門書です。統計学の理論に関する説明は少なめですが、とりあえずコードを書いて勉強したいという場合に良いかと思います。
 
 

スポンサードリンク




スポンサードリンク


関連する記事

 

2017年05月01日:新規作成
2017年05月24日:Visual Studioのインストール方法を修正
2018年05月19日:文字コードの指定を一部修正。
2018年09月30日:Flask関連の記事へのリンクを追加

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください