Pynyumon03 LT

18
Windows で Python でででででででで Python でででででで #3 LT P y t h o n # 3 1 2 0 1 6 / 8 / 3 1

Transcript of Pynyumon03 LT

Page 1: Pynyumon03 LT

Windows で Pythonやる方法いろいろPython 入門者の集い #3 LT

Python

入門

者の

集い

#3

12016/8/31

Page 2: Pynyumon03 LT

自己紹介 名前 :

driller Twitter:

@patraqushe なにやってる人?

デリバティブトレーダー Python 歴

1 年ちょい

Python

入門

者の

集い

#3

22016/8/31

Page 3: Pynyumon03 LT

宣伝 : PyConJP2016 で Talk します

https://pycon.jp/2016/ja/schedule/presentation/24/Distribution 録画されない Talk です、あとから YouTube で見ることができません Excel, pandas, Jupyter このどれかにティンときた人は是非きてネ

Python

入門

者の

集い

#3

32016/8/31

Page 4: Pynyumon03 LT

Windows のバイナリで Python を動かす 公式の Python からインストール Distribution からインストール

Anaconda Canopy Python(x,y) WinPython Pyzo

Intel® Distribution for Python* Cygwin, MinGW 等

Python

入門

者の

集い

#3

42016/8/31

Page 5: Pynyumon03 LT

Linux のバイナリで Python を動かす 仮想化マシン

VMware Player, VirtualBox(Vagrant) コンテナ (Docker)

Docker toolbox, Docker for Windows Bash on Ubuntu on Windows(WSL) ←New!

Python

入門

者の

集い

#3

52016/8/31

Page 6: Pynyumon03 LT

Windows のバイナリで動かす場合利点 オーバーヘッドが少ない 構成がシンプル Windows の API が呼び出せる

Windows アプリ (Excel 等 ) と連携できる

欠点 コンパイラが必要なパッケージを入れる場合に苦労することがある Windows に対応していないパッケージがある cmd.exe(Dos) じゃないと使えないコマンドがある (conda, virtualenv-

wrapper) 事例が少ない

Python

入門

者の

集い

#3

62016/8/31

Page 7: Pynyumon03 LT

Linux のバイナリで動かす場合利点 殆どのパッケージが動作する シェルが使える インフラ系のツールと連動させることが容易 pyenv 等が使える 事例が多い

欠点 構成によってはオーバーヘッドがある Windows のアプリと連携できない GUI が面倒 Linux に対する学習コスト

Python

入門

者の

集い

#3

72016/8/31

Page 8: Pynyumon03 LT

Windows のバイナリで Python を動かす普通はここから

Python

入門

者の

集い

#3

82016/8/31

Page 9: Pynyumon03 LT

公式の Python

最も一般的な方法で王道 問題があった場合に比較的対処し易い コンパイルが必要なパッケージを入れる場合に苦労することがある

コンパイラをインストールする Unofficial Windows Binaries for Python Extension

Packages(http://www.lfd.uci.edu/~gohlke/pythonlibs/) から wheel をダウンロードしてインストールする ←ほぼ必須! 仮想環境は Virtualenv, Virtualenvwrapper が主流

Python

入門

者の

集い

#3

92016/8/31

Page 10: Pynyumon03 LT

Distribution

必要なパッケージがプリインストールされて便利 現状では Anaconda 一強

ハマってしまったときに困ることが多い パッケージ管理がブラックボックス トラブルシューティングの事例が少ない 識者にきいても嫌がられることがある

WinPython は portable なので引っ越しに便利

Python

入門

者の

集い

#3

102016/8/31

Page 11: Pynyumon03 LT

Anaconda

とにかくメジャーなパッケージがプリインストールされている パッケージは全てビルドされている

miniconda をインストールすることで最小限の構成も作れる pip も使えるが conda というパッケージ管理コマンドがある

conda にないパッケージは pip でインストールする conda で仮想環境を構築できる conda で ハ マ っ た と き に 苦 労 す る こ と が あ る ( 特 に

Windows)

Python

入門

者の

集い

#3

112016/8/31

Page 12: Pynyumon03 LT

Intel® Distribution for Python*

とにかく高速で動作する 未だベータ版 動かないパッケージが多い mkl は numpy 等が対応してきたので、 mkl 目的ならこれを敢えて選択しなくてもよいかも

Python

入門

者の

集い

#3

122016/8/31

Page 13: Pynyumon03 LT

Linux のバイナリで Python を動かすPython のマイノリティからマジョリティへ

Python

入門

者の

集い

#3

132016/8/31

Page 14: Pynyumon03 LT

仮想化マシン (VM Ware, VirtualBox)

通常の Linux マシンと同じように使えるので、普段 Linux を触っている場合は抵抗なく使える Linux 環境の事例と共有できる

pyenv, direnv, Pythonz 等が使える 殆どのパッケージが動作する 仮想マシンが動作するハードウェア要件と OS 要件がある 仮想マシン用にある程度リソースが予約されてしまう Docker toolbox と併用するなら VirtualBox OS は Vagrant でインストールするのが手軽

Python

入門

者の

集い

#3

142016/8/31

Page 15: Pynyumon03 LT

Docker

Docker for Windows が beta から stable になった 様々な Docker Image が用意されている Docker compose を使うことで DB や他の言語との連携ができる 様々な OS 、様々なバージョンの Python 環境を構築できる 作りなおしたり、引っ越しするのが簡単 ハードウェア要件と OS 要件がある ある程度コンテナの知識が必要

Python

入門

者の

集い

#3

152016/8/31

Page 16: Pynyumon03 LT

Bash on Ubuntu on Windows(WSL)

Windows 10 Anniversary Edition から bash(Ubuntu) が使えるように Cygwin や MinGW に近いが、ネイティブなバイナリが動作するのでオーバーヘッドが少ない ( らしい ) Jupyter Notebook を普通にインストールしても動かないので、 libzmq のパッチを入れる必要がある (2016/8/20 現在 )

https://github.com/Microsoft/BashOnWindows/issues/185 GUI も X-window で動作する ( 時間があればデモやります ) ハードウェア要件と OS 要件がある まだ beta 版なので今後のアップデートに期待

Python

入門

者の

集い

#3

162016/8/31

Page 17: Pynyumon03 LT

Python のプライオリティはそこそこの位置にいるので今後に期待できそう

https://msdn.microsoft.com/en-us/commandline/wsl/faq

Python

入門

者の

集い

#3

172016/8/31

Page 18: Pynyumon03 LT

Let's start Python!ご清聴ありがとうございました

Python

入門

者の

集い

#3

182016/8/31