Pythonエンジニア育成推進協会監修 Python実践レシピ

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

ダウンロード

サンプルコードのダウンロード

(2022年3月17日更新)

本書内に掲載しているサンプルコードを以下からダウンロードできます。圧縮ファイルになっていますので,解凍したうえでご利用ください。

ダウンロード
python実践レシピサンプルコード.zip

免責:本サンプルコードを使用することによって,使用者が受けたあらゆる不利益に対して,著者および技術評論社はその責任を負いません。

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2022年6月17日最終更新)

P.51:コード冒頭「処理の実行時間を計測するコンテキストマネージャー」先頭行に以下1行を追加

@contextlib.contextmanager
from time import time, sleep
@contextlib.contextmanager

(以下2022年3月14日更新)

P.9:本文9行目

わかりくい場合
わかりくい場合

P.14:仮想環境の無効化 コマンド画面

$ python -V Pythonのバージョンが異なる
$ python -V システムのPythonのバージョンが表示される

P.36:本文 2行目

isual Studio
Visual Studio

P.72:本文 2行目

(p.71)
p.208

P.73:本文 2行目

処理は一度しか実行されていません。変数に代入しただけで指定した回数分実行されているつもりが、実際は一度しか処理されていなかったということを防ぐために、
ジェネレーターオブジェクトが返されるのみで処理は実行されていません。 next()関数を使用することでyield文までの処理が一度実行されます。変数への代入や、 next()関数を一度呼び出しただけで指定した回数分実行されているつもりが、実際は処理されていなかったということを防ぐために、

P.73:「ジェネレーターを変数に代入したことで起こしやすいミス」の最終行


>>> gen = multiplier()  # 変数に代入しただけではdb_update()は実行されない

>>> gen = multiplier()  # 変数に代入しただけではdb_update()は実行されない
>>> next(gen)  # db_update()が一度実行される

P.132:「表:フォーマットの指定方法一覧」の2行目

:^-30
:-^30

P.198:bisect_left(a, x, lo=0, hi=len(a))の引数

hi:検索開始終了を指定する。
hi:検索終了位置を指定する。

P.199:insort_left(a, x, lo=0, hi=len(a))の引数

hi:検索開始終了を指定する。
hi:検索終了位置を指定する。

P.202:9.4.2  定数を呼び出すの「定数を呼び出す方法」5行目

>>> Nengo(5)
>>> Nengo(3)

P.230:「表:BytesIOクラスのメソッド」内「read(size=-1)」の「戻り値」

str
bytes

P.239:1行目

finallyを使ってsys.exit()が呼ばれる前に必要な処理を実行する
finallyを使ってsys.exit()が呼ばれた後に必要な処理を実行する

P.239:10行目

withを使ってsys.exit()が呼ばれる前に必要な処理を実行する
withを使ってsys.exit()が呼ばれた後に必要な処理を実行する

P.241:「表:ArgumentParserの初期化引数」内「fromfile_prefix_chars」の解説

引数をファイルに記述して読む込む際
引数をファイルに記述して読み込む際

P.278:「表:pickleモジュールの主な関数」の「関数名」最終行

encoding="ASCII", errors="strict", buffers=None
encoding="ASCII", errors="strict", buffers=None)

P.336:「14.4.1  Base64にエンコードする」の本文1行目,「b64encode(s, altchars=None)」の「引数」altchars,「b64encode(s, altchars=None)」の下の解説文(4箇所)

バイト文字列
バイト列

P.337:「Base64のエンコード」の続き,3行目

>>> base64.b64encode(s.encode()) バイト文字列にエンコードして渡す
>>> base64.b64encode(s.encode()) バイト列にエンコードして渡す

P.337:「14.4.2  Base64からデコードする」の本文1行目,「b64decode(s, altchars=None, validate=False)」の「引数」s,altchars(3箇所)

バイト文字列
バイト列

P.434:「encrypt(data)」および「decrypt(data)」の「引数」「戻り値」(4箇所)

バイト文字列
バイト列

P.438:「encrypt(plaintext, padding)」の「引数」plaintext

バイト文字列
バイト列

P.439:「class hazmat.primitives.asymmetric.padding.OAEP(mgf, algorithm, label)」の「引数」label

バイト文字列
バイト列

P.439:「メッセージの暗号化」の下から3行目

バイト文字列
バイト列

P.469:「19.3.2  run()関数で設定可能な主な引数」内,run()関数表組みの「引数」「stdout」「stderr」の脚注

※1
※4

P.469:「19.3.2  run()関数で設定可能な主な引数」内,run()関数表組みの「引数」「errors」の脚注

※2 ※3
※5 ※6

P.469:「19.3.2  run()関数で設定可能な主な引数」内,run()関数表組みの「引数」「text」「universal_newlines」の脚注

※2
※5