python何から手をつけたらいいですか?とかIDEはなにを入れたらいいですか?と質問してくれた積極的な方がいたので説明用にメモを残します。
はじめに
対象
- pythonをやったことないけど、何から始めたらいいのか思いつかない人。
環境はWindowsを想定しています
私がWindowsもしくはLinuxを使っていてMacは使っていないので、
Windowsユーザ向けの情報です。
流れ
- pythonインストール
- エディタインストール
- Hello World実行
- WebでHello World(bottle利用)
- おすすめの技術紹介
pythonインストール
Python公式ページでpython本体をダウンロードしましょう。
バージョンは3系を選択しましょう
pythonのバージョンには2系と3系があります。メジャーバージョンの違いのことですね。
python2.7.16とかpython3.7.4とかですね。ライブラリの対応バージョンにももちろん関連しますが、かなり3系に対応されて来ていますし構文も改善されているのでバージョンは3系を選択しましょう。
python2とpython3の違いについては以下のページを参考にしてみてください。
- Python2からPython3.0での変更点(わかりやすい)
- 2系と3系の違い(わかりやすい)
- 【公式ページ】Python 2 から Python 3 への移植
- Supporting Python 3: An in-depth guide
32bit or 64bit
Downloadのボタンを押すとPCが64bitでも32bit版がダウンロードされます。
学習レベルでは64bitにこだわる必要はないと思いますが、必要であれば64bit版のinstallerを使いましょう。
64bit版のダウンロードは以前投稿の最後"注意"という部分に書いてあります。
エディタをインストール
IDEについて
Java言語ならEclipse、C#はVisualStudioというように、pythonではJetBrains社のPyCharmというIDEを使うことが多いようです。(JetBrainsのIntelliJ IDEAもJava開発でシェアをEclipseと同等もしくはそれ以上に伸ばしている模様)
PyCharmを使うとvirtualenvとかcondaとか環境使えるしコード補完もあるから便利だと思います。
ただ、学習のため基礎もやっておくといいと思います。
また公式サイトの手順はIDEを使っていない前提で説明が書かれているので一通りやってみるにはコマンドプロンプトとエディタで取り組んでみることをおすすめします。
エディタおすすめ
Hello Worldなどサクッとコード書いてみるにはちょっとしたエディタで十分だと思います。
個人的なおすすめは以下です。
pythonコードも見やすし、多少の補完もしてくれます。その気になればエディタ上から実行も可能です。
また、IDLEを使うのも学習用としてはいいと思います。
↓こちらに画面イメージとか載せておきました。
https://qiita.com/HyunwookPark/items/c7eef970c7d7c05b09ad
Hello World実行
ソースコード書く
任意の場所にディレクトリを作成して.pyファイルを新規作成しましょう。
ソースコードの内容はまずはHelloWorldで。この内容だけならimport文も不要です。
print('Hello World!!')
実行
コマンドプロンプトもしくはWindows PowerShellで以下のようにコマンド実行してみましょう。
> python test.py
Hello World!!
WebでHello World(bottle利用)
ライブラリをインストール
ライブラリをインストール方法は色々ありますが、もっとも基本的なのはpipを使う方法でしょう。
コマンドプロンプトもしくはWindows PowerShellで以下のようにコマンド実行してみましょう。
> pip install bottle
Collecting bottle
Downloading https://files.pythonhosted.org/packages/69/d1/efdd0a5584169cdf791d726264089ce5d96846a8978c44ac6e13ae234327/bottle-0.12.17-py3-none-any.whl (89kB)
|████████████████████████████████| 92kB 1.5MB/s
Installing collected packages: bottle
Successfully installed bottle-0.12.17
ソースコードを書く
from bottle import route, run
@route('/hello')
def hello():
return "Hello World!"
run(host='localhost', port=8080, debug=True)
実行
> python hellobottle.py
Bottle v0.12.17 server starting up (using WSGIRefServer())...
Listening on http://localhost:8080/
Hit Ctrl-C to quit.
ブラウザでアクセス
ブラウザで上記にアクセスするとサーバからの応答が確認できる。
おすすめの技術紹介
pythonに興味が湧いたら以下のようなライブラリで好きなものを作ってみましょう。
ライブラリ | 概要 |
---|---|
tkinter | WindowアプリなどGUI画面を作るためのライブラリ(python標準搭載なのでインストール不要) |
NumPy | 数学計算が得意なライブラリでCythonで記述されていて高速 |
pandas | データ解析のためのライブラリでCSVの読み込みやデータ操作などができる |
matplotlib | グラフ描画のライブラリでNumPyやpandasと組み合わせて使うことが多い |
scikit-learn | 最近のお流行り"機械学習"のライブラリ |
Django | Ruby on RailsっぽいWeb用フレームワークでログイン機能や画面を作るtemplate機能、O/Rマッパー機能などが含まれる |
bottle | pとても軽量なWeb用フレームワークでURIからのルーティング機能が主な機能 |
Flask | とても軽量なWeb用フレームワークでbottleよりシェアが多いように見える(使ったことないので語れません) |
pygame | pythonでゲームを作るためのライブラリ |
Pyxel | pythonでレトロゲームを作るためのライブラリ(個人的にやってみたいだけ) |
参考
公式ドキュメント
おまけ
virtualenv
プロジェクトによって利用するpythonのバージョンが違っていたりLinuxではデフォルトでpython2がインストールされていてpython3がどうも使いづらかったりするときのために仮想環境を使うことが多いようです。
virtualenvというものです。
pycharmを使う場合はプロジェクトを作るときにvirtualenvの利用を聞かれたりします。
知っておくといいかも
技術名 | 概要 |
---|---|
CPython | 公式Pythonのこと |
Cython | PythonのようなコーディングでコンパイルするとC言語のコードでPython拡張モジュールを作ることができる |
pyenv | virtualenvのお友達 |
pypy | pythonを高速実行できるとうわさのもの |
Anaconda | pythonのディストリビューションでデータサイエンスおよび機械学習関連のライブラリが含まれる |
Jupyter Notebook | Anacondaに含まれるツールで、デバッグのような実行方法ができるエディタのようなものグラフとか画像とかすぐ表示できる |
pip | pythonのパッケージ管理ツール |