Python
[サンプルコード][まとめ][標準ライブラリ][ライブラリ][Django][Flask][Pyramid][Zope][IronPython][Google App Engine][Pillow][Python Imaging Library][Beautiful Soup][Python NumPy][Python matplotlib][Python Win32 Extensions][pyExcelerator][Jython][PyDev][PyQt][PyScripter]
インストール
言語まとめ
サンプルコード(ファイル、コレクション・・・)
サンプルコード(オブジェクト指向)
標準ライブラリ概観
- 詳細
- 概要
処理内容 | 標準ライブラリ |
---|---|
OSインターフェース | os |
ファイルのワイルドカード | glob |
コマンドライン引数 | sys |
標準エラーを出力しプログラムを終了 | sys |
正規表現を利用する | re |
数学 | math |
URL による任意のリソースへのアクセス | urllib |
インターネットアクセス | urllib2 |
日付と時刻 | date、datetime、time |
時間計算 | time |
データ圧縮 | zlib |
パフォーマンス計測 | timeit |
品質管理 | doctest |
出力書式 | repr、pprint、textwrap、locale |
テンプレート | Template |
シリアライズ | pickle |
バイナリデータレコードレイアウトでの作業 | struct |
オブジェクトのコピー | copy |
マルチスレッド | threading |
ロギング | logging |
XML Dom | xml.dom |
XML ElementTree | xml.etree |
データベースの使用 | sqlite3 |
ビルトインオブジェクト
Python サンプルコード
- 全般
- サンプル
Python Osmosis
- Episode 6: Flow Control, if and for Statements
- Episode 7: The Range Function
- Episode 50: Standard Library: Decimal Floating Point Arithmetic
IDE
パッケージ管理
setuptools
- http://peak.telecommunity.com/DevCenter/setuptools
- https://pypi.python.org/pypi/setuptools
- CentOS6にPython2.7をインストール
Windows
- 上記ページからインストーラをダウンロードして実行(2.7の例)
setuptools-0.6c11.win32-py2.7.exe
- Power Shell 3以降
PS C:\WINDOWS\system32> (Invoke-WebRequest https://bootstrap.pypa.io/ez_setup.py).Content | python -
- PATHに追加(2.7の例)
C:\Python27\Scripts
- 実行例
c:\work\python>easy_install virtualenv
- プロキシを利用している場合、以下を環境変数に設定
Windows PIPを利用する
Windows 用 バイナリパッケージ
- http://www.lfd.uci.edu/~gohlke/pythonlibs/
- Windows で VirtualEnv の Python2.7 に pip と wheel を使って コンパイルエラーが発生するパッケージ(例 scipy)をWindows用バイナリ提供サイトから入手してインストールする
仮想環境
VirtualEnvを利用してPythonの仮想環境を作成
Python 3以降同梱されている
python3 -m venv /path/to/new/virtual/environment
それ以前
CentOS
Windows
- インストール
上記 パッケージ管理 を参照し、easy_install を利用出来るようにしておく
c:\easy_install virtualenv
- ワークスペースの作成
c:\work\python>python -m virtualenv env New python executable in env\Scripts\python.exe Installing setuptools................done. Installing pip...................done.
- 仮想環境の実行
- Scripts\activate の実行
c:\work\python>cd env\Scripts c:\work\python\env\Scripts>activate (env) c:\work\python\env\Scripts>
- 仮想環境の停止
- Scripts\deactivate の実行
(env) c:\work\python\env\Scripts>deactivate
- Tclライブラリが見つからない
- Python VirtualEnvでIDLEを利用する
Ubuntu
- インストール
$ sudo apt-get install python-virtualenv
WinPython
フレームワーク
Web
Django
Google App Engine
O/Rマッパー
SQLAlchemy
プラグイン
PyDev
Python ライブラリ
デバッグ
GUI
実践
自然言語処理
Tips
文字コード
ファイルの文字コード
URLエンコード
Python UnicodeEncodeError の対処
Python ユニコードエスケープをデコード
Python CSVファイル
書式
文字列を16進数に変換
print 'hoge'.encode('hex') print '686f6765'.decode('hex')
2進数文字列を10進数に変換
>>> int('10101100',2) 172
IPアドレスを2進数で表示
>>> "{0:08b}.{1:08b}.{2:08b}.{3:08b}".format(172,31,16,0) '10101100.00011111.00010000.00000000'
- 戻す
>>> '.'.join([str(int(x,2)) for x in "10101100.00011111.00010000.00100000".split(".")]) '172.31.16.32'
ログ
サンプル
Python 組合せと順列の計算
Python パスワード生成
その他
help関数の使い方
プロパティを持っているか
hasattr(インスタンス,プロパティ名)
正規表現による分割
- re.split を利用
>>> import re >>> re.split('[ \t\n\.\,]', 'this is\ta\npen.') ['this', 'is', 'a', 'pen', '']
正規表現による置換
- re.sub(pattern, repl, string, count=0, flags=0) を利用する
>>> s = r'AaBbCc' >>> re.sub(r'[a-z]',r'',s) 'ABC'
ユーザーからの入力を得る
- raw_input を利用する
number = int(raw_input("please input int:"))
日本語のクエリパラメータ
import urllib import urllib2 url = r'https://maps.googleapis.com/maps/api/place/nearbysearch/json?%s' queries = { 'key':GOOGLE_API_SRVER_KEY, 'location':'35.1814464,136.906398', 'radius':'500', 'keyword':u'まんが喫茶'.encode('utf-8') } data = urllib.urlencode(queries) req = url % data print req response = urllib2.urlopen(req) for l in response: print l
YAGI Hiroto (piroto@a-net.email.ne.jp)
twitter http://twitter.com/pppiroto
Copyright© 矢木 浩人 All Rights Reserved.