はじめに
最近AIだとかの記事を読んでいると「python」の文字がチラホラ出てきます。Webアプリケーションから、Windowsフォームアプリ、スクリプトまで、なんでもできる言語だそうで。うまくすれば一生ものの言語になるかもしれない…。淡い期待を抱きながら勉強したことをまとめていきます。
実行環境
macOS Sierra(10.12.5)+BootCamp(Windows10 Pro)で動作させています。
Windows10 だと思ってもらってたぶん大丈夫です。今のところ環境起因のハマりポイントには遭遇していません。
環境整備
まずは公式サイトからPythonのインストーラーをダウンロードします。Windows版は64ビット版があるので、Windows10の方はこちらのURLから「Windows x86-64 executable installer」をダウンロードしてインストールします。
統合開発環境を選ぶ
プログラムを書いて、実行するための開発ツールはいくつかあります。
しばらく使ってみた感じですと、簡単なテストコードは Visual Studio Codeで書いてデバッグ実行し、ちょっと大きめの、例えばDjangoを使ったWebアプリケーションを作る場合などは、eclipseを使うようになりました。eclipseのコード補完より、Visual Studio Codeの方が精度が高い気がします。入門で勉強している間は Visual Studio Codeを使ったほうが動作も軽快で楽です。
PyCharmは、「Professional版」と「Community版」があり、「Community版」は無料で利用可能ですが、Visual Studio Codeに慣れたいということもあり、少し使って触らなくなりました。
NetBeansはpythonをサポート対象外にしたようですが、プラグインで対応できるようです。phpも同じ環境で開発できるのですが、コード補完がうまくできず、こちらもあまり使わなくなりました。
最近、プロジェクトでC#をVisual Studioを使っているのですが、使い勝手が良くなってきており、その延長で自宅ではVisual Studio Community 2017を使用するようになりました。Pythonも標準でサポートされていて、DjangoのWebアプリケーションもサクッと作れるようになっています。eclipseよりも軽くかなりおススメです。
Python日本語ドキュメント
日本語ドキュメントはこちらです。(https://docs.python.jp/3/)
サンプルコードを書く
まずはサクッと試し書き。コードが見やすく、シンプルで簡単な印象です。拡張子は.pyにしてあげるとVisual Studio Codeが勝手にシンタックスハイライトしてくれます。
__author__ = "yorozuya-se.valuesv.jp" __date__ = "$2017/06/26 17:51:02$" items = [10,20,30] for item in items: print(item) print("end loop") #パスの¥は2つ打ってエスケープする file = open("C:\\temp\\test002.txt") fileData = file.readlines() file.close for line in fileData: print(line) print("end loop2")
pipをインストールする
パッケージ管理ツールです。swiftでいうcocoapodみたいなものと今のところ理解しています。 早速インストールしましょう。
- https://bootstrap.pypa.io/get-pip.pyからget-pip.pyをダウンロード
- ターミナルから「sudo python get-pip.py」を投入
pylintをインストールする
pylintはコードチェッカーです。Visual Studioでビルドした時に表示される「利用していない変数です」的なワーニングを表示してくれます。※はじめのうちはインストールしないほうが良いかもしれません。無駄なチェックが多くて警告がうるさいです。
- ターミナルから「sudo pip install pylint」を投入(※pipをインストールしている前提です。)
参考:https://docs.microsoft.com/ja-jp/visualstudio/python/code-pylint
ファイル出力
ファイル出力はこんな感じ です。
Macでの改行は「\n」。バックスラッシュは「optionキー」+「¥キー」です。
"""testModule""" #coding=utf-8 data = "こんにちわんこそば" f = open("/tmp/testpy.txt", "a") for i in range(10): f.writelines("{0} {1}杯目\n".format(data, i)) f.close()
実行結果
$ cat /tmp/testpy.txt こんにちわんこそば 0杯目 こんにちわんこそば 1杯目 こんにちわんこそば 2杯目 こんにちわんこそば 3杯目 こんにちわんこそば 4杯目 こんにちわんこそば 5杯目 こんにちわんこそば 6杯目 こんにちわんこそば 7杯目 こんにちわんこそば 8杯目 こんにちわんこそば 9杯目 $
グラフを表示する
まずは環境を整えます。(Mac環境です。)
python3.6がインストールしてある環境です。ライブラリをたくさん入れていますが、実際すぐ使うのは、「matplotlib」・「numpy」・「pandas」です。
pip3 install --upgrade setuptools pip3 install --upgrade pip pip3 install numpy pip3 install scipy pip3 install matplotlib pip3 install Pillow pip3 install pandas
社内LANでプロキシサーバーを経由しないと外に出れない方はこんな感じです。
「−−proxy△IPアドレス:ポート番号」をオプションで付けます。
pip install plotly --proxy 192.168.XXX.XXX:8181
すべてインストールが終わったら以下のコマンドを実行
jupyter notebook
メッセージの最後にURLをコピーしてブラウザに貼り付けてとあるので
その通りにします。
jupyter notebookがブラウザに現れるので
右側の[new]→[python3]を選択します。
# jupyter notebook内にグラフを表示するコマンド %matplotlib inline import numpy as np import matplotlib.pyplot as plt import pandas as pd # 乱数を生成 x = np.random.rand(10) y = np.random.rand(10) # 散布図を描画 plt.scatter(x, y) # 折れ線グラフを描画 #plt.plot(x, y, marker="o", linestyle="dashed") plt.show() #データを表示 df = pd.DataFrame(x,y) print(df)
今日は一旦ここまで。
そろそろきれいにまとめようと思います。
Django
勉強のために入門サイトを色々と探しましたが、一番分かりやすかったのがこちらのページでした。ステップ・バイ・ステップで実装を解説していただいているのでよく理解できます。
DjangoによるWebアプリケーション開発入門
ロギング
log4jのようなロガーがあります。使い方はこちらが参考になります。
djangoのloggerの(最低限の)使い方
ライブラリ
ライブラリをインポートすることで、機能を追加できます。
#import os