Python

P474 マジックコマンド

IPythonでロードしているパッケージの情報や、宣言している変数の値などを確認できるための便利コマンド Jupyter Notebookでも利用可能例) %who:定義している変数名の一覧 %whos:定義している変数名と型と値の一覧 %save:セッション履歴のファイルへの保…

P123 Pythonからメールを送信する

・emailモジュールとsmtplibモジュールを利用 ・SMTPサーバとしてGmailのサーバーを使うのがお手軽であるが、認証が必要で、さらにTLS/SSL利用が必須なのでSMTPの代わりにSMTP_SSLを利用する必要が有 ・OP25Bに対応するためにはP323の様な実装が必要Pythonク…

P122 Voluptuous

Pythonの基本的なデータ型を定義できるライブラリ Schemaオブジェクトでスキーマを定義し、関数として呼び出すことで引数のオブジェクトのバリデーションを実施可能Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド-作者: 加藤耕…

P117 @retryデコレーター

リトライ処理を簡潔に書けるライブラリ # stop_max_attempt_number:最大リトライ回数 # wait_exponential_multiplier:指数回数的(1,2,4,8…)なwaitを仕掛ける事ができ、初回のウェイトをミリ秒単位で指定 @retry(stop_max_attempt_number=3, wait_exponennti…

P72 パッケージ一覧の保存

pip freezeコマンドを使用すれば、現在の仮想環境で使用しているパッケージの情報をファイルに書き出せる。 ファイル名は慣例として、requirements.txtがよく使われる。requirements.txtファイルをソースコードと合わせてバージョン管理すればよい。pip inst…

P62 Python2系のEOLについて

2020年でサポート終了[PEP373] Ptyhon2.8はリリースしない[PEP404]ソフトウェアデザイン 2017年 06 月号 [雑誌]出版社/メーカー: 技術評論社発売日: 2017/05/18メディア: 雑誌この商品を含むブログを見る入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高…

P197 正規表現

import re pattern = 'ab' data = 'abc' result = re.match(pattern, data) なお、match関数は先頭から一致する文字列を探すメソッドである。 与えた文字列の最初にヒットする個所を取得する場合は、searchメソッドを、マッチする全てをリストで返す場合はfi…

P193 書式設定

古いスタイルでは、string % dataという形式で指定が行えた。 '%d %f %s' % (n, f, s) #10進数、10進数(float)、文字列で表示Python3を使うのであれば、新しいスタイルのプレースホルダーとformatメソッドの組み合わせの指定を使う方がよい。 '{} {} {}' % (…

P126 デコレータ

デコレータ元の関数を予め宣言しておき、デコレートしたい関数に対して@関数名とアノテーションの様に付け加えるだけでデコレートできる。 Javaでは到底こんなことはできない(groovyならできそうだが)実装方法で、この機能は非常に使い勝手が良さそう。 また…

P125 ジェネレータ

range関数の様に呼び出された前回の状態を覚えているオブジェクトのこと入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る

P118 docstring

関数定義の後に文字列を宣言すれば、コメント記号(#)無しで注釈を記述できる。 def hoge1(): 'hogeを返す' return 'hoge' なお、長文を記述したい場合は、'''を使えばよい。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリー…

P116 可変引数

Javaでいう可変引数に近い機能として、*によるタプル化と、**による辞書化といく機能がある。 def tupple1(*args): #位置引数のタプル化 tupple1(3, 2, 1, 'hoge') #実行例 def dict1(**args):キーワード引数のタプル化 dict1(beg='ges', sun='oto', sen='sp…

P115 デフォルト引数の罠

Pythonでは関数を宣言する際、デフォルト値を設定する事ができる。 このデフォルト引数は、呼び出されたタイミングで都度評価されるのではなく、実行時に最初に一度評価されるだけである。 そのため、ミュータブルな値を用いてしまっていた場合、二度目の実…

P112 none

Javaでいうnullである。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る

P104 内包表記

データ構造をコンパクトに作成するための形式 本書には、リスト内包表記、辞書内包表記、集合内包表記、ジェネレータ内包表記が紹介されている。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01…

P98 for文

・Javaの様な拡張for文も当然OK ・辞書を回す際、そのまま回すとキー、valuesメソッドを使うと値、itemsメソッドを使うと両方が取れる。 ・breakによる中止もOK、elseハンドラも有 ・continueで次のループという点もJavaと同じ ・Javaの通常のfor文と同じ様…

P96 while文

・文法スタイルはif文と同様 ・break文で抜けれる ・break文を使わずにwhile文を抜けた場合、else文を記述しておけば、ハンドラとして動かす事ができる 入門 Python 3 作者: Bill Lubanovic,斎藤康毅,長尾高弘 出版社/メーカー: オライリージャパン 発売日: …

P91 if文

・if,elif,elseがキーワード ・終わらせるためのキーワード(ex.fi)みたいなのはない ・if color == "red": と条件文の後にコロンが必要 ・比較演算子はjavaと同じで、加えてinがある(groovyと一緒) ・論理演算子は、and, or, notとjavaなどの様な短く見やす…

P53 リストとタプルと辞書

リストはミュータブルで、タプルはイミュータブルである。 その代わり、タプルはメモリ使用量が少なく、辞書のキーとしても使える。 [リストの生成] empty_list1=[] empty_list2=list()[タプルの生成] empty_tupple=()辞書は、JavaでいうHashMap、awkとかで…

P42 []による文字の抽出・スライス

az = 'abcdefghijklmnopqrstuvwxyz' #2.3.6 文字の抽出 az[0] #a az[-1] #z az[26] #IndexError #2.3.7 スライス az[:] #abcdefghijklmnopqrstuvwxyz az[20:] #uvwxyz az[12:15] #mno az[-3:] #xyz az[18:-3] #stuvw az[::7] #ahov(先頭から最後まで7字毎に…

P41 *による繰り返し

"hoge" * 2でhogehogeと同じ文字列を繰り返す事ができる。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る

P40 Pythonのエスケープ文字

Javaなどと同じバックスラッシュである。 \nで改行、\tでタブ文字というのもJavaと変わらない。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含む…

P39 str関数

str(99)などで与えられた引数を文字列型に変換できる。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る

P37 トリプルクォートで作成する文字列

対話型インタプリタなどで複数行に渡って文字列を定義する場合に用いる。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る

P32 基数

記法 意味 0b or 0B 2進数 0o or 0O 8進数 0x or 0X 16進数 なお、基数指定がなければ10進数としてPythonは扱う。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバ…

P26 算術演算子

演算子 意味 + 加算 - 減算 ∗ 乗算 / 浮動小数点数の除算 // 整数の除算(余りは切り捨て) % 剰余 ∗∗ 指数 入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この…

P24 type

type(オブジェクトやリテラル値)で型がどうなっているかを調べる事ができる。入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/12/01メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見…

P105 virtualenv

Pythonのパッケージをrootユーザとしてシステム全体に対してインストールも出来るが、依存関係を破壊してしまう恐れもある。 そのため、単独でPythonを別途インストールしたパッケージ環境のことをvirtualenvと呼ぶ。 ユーザは複数のvirtualenvを作成でき、…

Haxe(ヘックス)

多言語を生成できるプログラミング言語である。 Haxeで作成したプログラムをJavaScript,Java,C#,Python,C++,PHPなどに変換して書き出すことができる。Haxeプログラミング入門―1つのプログラムから、いろいろな言語に自動変換! (I・O BOOKS)作者: 尾野政樹,デ…