他言語ユーザーのためのpython入門
TRANSCRIPT
他言語ユーザーのためのPython入門
@kzfm
私について • @kzfm – 製薬会社の研究員(最近インフラ周りばかり) – perl -> python (-> haskell)
• pypiでメンテ – pygamess(量子化学計算) – pychembldb(sqlalchemy製のdbapi)
• 最近pandas(Rみたいに使えるやつ)がお気に入り
Python入門時に知っていると学習速度があがるかな
という内容です
書籍など
まずは「みんなのPython」
h"p://www.amazon.co.jp/dp/4797371595
多言語習得者にもこれからプログラミングを始めるヒトにも
Dive Into Python 3
h"p://diveintopython3-‐ja.rdy.jp/
Gameをつくりながら
h"p://inventwithpython.com/
もっと? • TOP 10 FREE PYTHON PDF EBOOKS DOWNLOAD TO LEARN PYTHON PROGRAMMING
– http://www.php2s.com/programming/top-10-free-python-pdf-ebooks-download-to-learn-python-programming.html
オンラインドキュメント
pydocコマンド • perlでいうところのperldoc
• pydoc [package]でターミナルで読む
• pydoc ‒p 5000でlocalhost:5000でサーバーが起動するのでwebブラウザから読める。地味に便利。
python.jp
PLEAC • http://pleac.sourceforge.net/ • perl cookbookを他言語で解いたもの • pythonはもちろんある – カバー率85%
• 得意な言語をテコにした他言語習得に便利!
ヘルプ的なモジュールや関数
dir • methodを調べます – よく使う
>>> str = "shizuoka.py" >>> dir(str) [...⾊色々... ', 'swapcase', 'title', 'translate', 'upper', 'zfill'] >>> str.startswith("hama") False
type • 型を調べます – 型システム入門買いました?
>>> type(str) <type 'str'> >>> type(3) <type 'intʼ’>
inspectモジュール • getsourceでソースコードを出力 – あまり使わない
>>> import inspect >>> import requests >>> inspect.getsource(requests.get) 'def get(url, **kwargs):\n """Sends a GET request. Returns :class:`̀Response`̀ object.\n\n :param url: URL for the new :class:`̀Request`̀ object.\n :param **kwargs: Optional arguments that `̀`̀request`̀`̀ takes.\n """\n\n kwargs.setdefault(\'allow_̲redirects\', True)\n return request(\'get\', url, **kwargs)\nʼ’
inspectモジュール(続き) • getabsfileでファイルの場所を知る
>>> import requests >>> import inspect >>> inspect.getabsfile(requests.get) '/usr/local/Cellar/python/2.7.3/lib/python2.7/site-‐‑‒packages/requests-‐‑‒0.10.6-‐‑‒py2.7.egg/requests/api.pyʼ’
たまに使う
正直めんどい (注)画像のヒトはしりません
IPYTHONのすすめ
IPythonとは • python interactiveの拡張 • 補完とかヘルプとか便利になってる • matplotlibとの親和性が高い – numpy + scipyとも
• でもOS X(10.7-)だとインストールが大変 – ScipySuperpackを使おう – http://fonnesbeck.github.com/ScipySuperpack/
コード補完
TABを押す
help(イントロスペクション) • methodの後に?をつける
shellを叩く • !ではじめる
その他の機能 • ?を叩くとヘルプ
エディタ
なにがいいの? • 好きなの使えばイイ – Sublime Text 2とかいいんじゃなかろうか?
• 設定Pythonで書くんでしょ?
• 僕はFlymakeがないと困るのでEmacsを使っています。 – http://blog.kzfmix.com/entry/1334218401
– .emacsの暗黒道には気をつけましょう • 「朝から.emacsいじってたら日が暮れたわ」みたいな
jedi • コード補完 – https://github.com/davidhalter/jedi
– vimでもemacsでも(sublime text?)
まとめ
IPython便利なのでつかいましょう