以下の内容は,2019年度以前のものです.2020年度の AProg の授業ではここに書いているのとは違う手段をとる予定ですので,ご注意ください. Pythonのプログラミング環境を整えるためのほげ †[edit]ここでは,主として応用プログラミング及び実習の受講者を対象に,自分のPC等でPythonプログラミングできる環境を手に入れる方法を説明します. インストールとかそういう面倒いのなしでよろ †[edit]というものぐささんには,以下のようなものがおすすめです.最近いろいろあるので,他にも自分で調べてみるとよいです(楽をするための努力を惜しんではいけません (^^). その1 †[edit]https://paiza.io/ja ブラウザ上で様々な言語のプログラミングと実行を試せる. 似たようなサービスは他にもいろいろあります. その2 †[edit]Google Colaboratory (以下 Colab) を利用する.これは,クラウド上(Googleのデータセンターにあるコンピュータ上)で Jupyter Notebook(もどき)を実行できる環境です.無料のサービスですが,GPUまで使用できちゃいます. 試しに2018年度第1回の授業の notebook を Colab で開くようにしたものが以下にあります.次のようにして開いてみましょう.OS は Windows でも macOS でも Linux でも構いません.ブラウザは Chrome がおすすめです.
2018年度の数理情報学科3年前期科目「パターン情報処理?」では,毎週の宿題を Colab 使ってやってもらってました.科目のページから 第5回の宿題? 以降の回の宿題のページをたどるといろいろあります. 普通の Jupyter Notebook を Colab で開いて動かすことも可能です.自分で調べるか takataka に尋ねてね. Windows PC 上に Python 環境を構築する †[edit]Windows PC 上でこの授業のために Python 環境を構築するには,Anaconda というものを利用するのが手っ取り早いです.教科書 p.8 からの説明を参考にしましょう. また,この授業で使用するエディタ Visual Studio Code は Windows 版もあります.#code を参照してください. mac 上に Python 環境を構築する †[edit]macOS の環境でも,Windows 同様に Anaconda を使ってもよいですが,ここでは別のやり方を推奨/説明します. Homebrew による Python のインストール †[edit]Homebrew というのは,mac に様々なソフトウェアパッケージをインストールするための「パッケージ管理システム」と呼ばれるものの一つです.実は macOS には標準で Python 入ってるんですが,バージョンが 2.7 なので,Homebrew を使って最新のもの(バージョン3系列)をインストールしましょう.
これで Python が動く環境ができました.次は jupyter やら何やら,この授業で使ってる Python 関係のもろもろを入れる作業です. 仮想環境の構築ともろもろのインストール †[edit]この授業のやり方に似せるために,aprog という名前の仮想環境を作ってそこにいろいろインストールすることにしましょう.ここでは,venv という仕組みを使います(龍大計算機室Linux環境の aprog も venv 使って作ったもの).仮想環境って何とか,venv って何とかいう辺りは説明を省略しますので,自分で調べるか takataka に尋ねてください.
ちなみに,この授業で使用するエディタ Visual Studio Code は macOS 版もあります.#code を参照してください. IPython †[edit]この授業では,hoge.py という名前で Python プログラムのファイルを作ったら,python コマンドを使って $ python hoge.py と実行することを基本としています. しかし,ここで説明する ipython を使うと,いろいろ便利なことがあります(特にプログラム作成途中,デバグ中に). 是非使ってみましょう. 次のように ipython コマンドを実行します. $ aprog (aprog) $ ipython Python 3.6.1 (default, Feb 2 2018, 08:55:26) Type 'copyright', 'credits' or 'license' for more information IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help. In [1]: IPython が起動して,In [1]: というプロンプト(入力待ってるよって合図)が出てきました. CTRL-D(コントロールキー押しながら'd')してみましょう. Do you really want to exit ([y]/n)? ここで y と答えるか(デフォルトが y なので)何も押さず Enter 押すと,終了します. ここでは,n と答えて続けましょう. 上記のプロンプトが出た状態で適当な Python のコードを入力して Enter を押せば,そのコードを実行できます. In [1]: x = 4649 In [2]: x + 1314 Out[2]: 5963 Jupyter Notebook みたいですね.というか,実は Jupyter はこの IPython をもとにして開発されたものだったりします((よだんだよん)Notebook ファイルの拡張子 ipynb は,IPython Notebook から ). IPython 上で自分の作った Python プログラムを実行することもできます. 例として,第2回課題C のプログラムを実行してみましょう. 次のように, %run の後ろに実行したいプログラムファイルの名前を書きます. In [3]: %run 02exC.py すると,そのプログラムが実行されます.出力があれば IPython 上に表示されますが,この例では(まだ)何も出力がありません. これだけだったら,普通に python コマンドを使って実行するのと大差ないですが,IPython 使うことの嬉しさは,次のようにしてみると分かります. In [4]: idList Out[4]: ['ptz541', 'add210', : 'wak946'] In [5]: idList[0] Out[5]: 'ptz541' In [6]: len(idList) Out[6]: 100 このように,プログラム 02exC.py を実行後に,このプログラム中の変数の値を確認できます. また,値を変更したり計算に使ったり,やりたい放題です(例は示しませんが関数を呼ぶことももちろん可能). In [7]: scoreList[-1] = 99999 In [8]: max(scoreList) Out[8]: 99999 デバグに便利ですので,是非活用しましょう. Visual Studio Code †[edit]Windows, macOS, Linux 等で使えます.無料です.インストールはこちらから: https://code.visualstudio.com/ Visual Studio Code (以下 code)の使い方などについては,ウェブにたくさん情報がありますので,探してみましょう.例えばこんなん: http://www.atmarkit.co.jp/ait/articles/1507/10/news028.html code では,プログラミングその他のソフトウェア開発をより便利に行えるように,後から「拡張機能」というものを追加することができます.龍大計算機室の Linux 環境の code にも Python のための拡張機能がインストールされてます.とはいえ,code をインストールして Python のコードを書くと Python 用拡張機能のインストールが勧められるので,言われた通りにすればインストールは完了します. 龍大計算機室Linux環境のデフォルトと仮想環境 aprog の違い †[edit]龍大計算機室Linux環境(現在は Ubuntu 14.04LTS)と,その上に構築したこの授業のための仮想環境 aprog との違いを簡単に説明します.以下,プロンプト $ はデフォルトの環境,(aprog) $ は aprog コマンドを実行して有効にした仮想環境,を表します. コマンド python, python2, python3.違いは,python コマンドで Python2, 3 のどちらが起動するか. $ python -V Python 2.7.6 $ python2 -V Python 2.7.6 $ python3 -V Python 3.6.1 $ aprog (aprog) $ python -V Python 3.6.1 (aprog) $ python2 -V Python 2.7.6 (aprog) $ python3 -V Python 3.6.1 NumPy のバージョン $ python3 Python 3.6.1 (default, Feb 2 2018, 08:55:26) (中略) >>> import numpy as np >>> np.__version__ '1.13.3' $ aprog (aprog) $ python Python 3.6.1 (default, Feb 2 2018, 08:55:26) (中略) >>> import numpy as np >>> np.__version__ '1.15.1' OpenCV のバージョン $ python3 Python 3.6.1 (default, Feb 2 2018, 08:55:26) (中略) >>> import cv2 >>> cv2.__version__ '3.3.0' $ aprog (aprog) $ python Python 3.6.1 (default, Feb 2 2018, 08:55:26) (中略) >>> import cv2 cv2>>> cv2.__version__ '3.4.2' 他にも,コマンドやPythonの拡張モジュールのバージョンに違い,もしくは aprog 環境にしか入ってないものがあります. |