読書実況 ▶︎ #10 The Python Tutorial — 4.8. Defining Functions
気になった本を読み進めていく、読書実況 — 以前にプログラミング言語 Python を触ってみたとき "独特でよくわからない" 感じがしたので、そんな苦手意識を打開するべく『The Pyton Tutorial』を読み進めていってみることにします。よろしくお願いしますね。 今回は「[4. More Control Flow Tools](https://docs.python.org/3/tutorial/controlflow.html)」の “[4.8. Defining Functions](https://docs.python.org/3/tutorial/controlflow.html#defining-functions)” から読み進めていきますね。 The Python Tutorial: https://docs.python.org/3/tutorial/ 各回の詳細情報: https://slime-caraway-717.notion.site/The-Python-Tutorial-2feda80f2c3b8180b655e81f5e371663?pvs=74 ■ ダイジェスト 技術書を読み進める様子を記録した読書実況です。今回は Python 公式ドキュメント The Python Tutorial の「関数定義」パートに入り、実際に読みながら確認・整理しました(解説講座ではなく学習の過程を記録したものです)。 - `def` による関数定義の基本構文を確認:関数名と丸括弧内の形式パラメータ、続くインデントされた本体の書き方 - 関数冒頭の文字列リテラルがドキュメント文字列(docstring)になる仕様を読んで実験し、呼び出し時に自動表示はされないことを確認。`print`、`"Print a Fibonacci series up to n."` の例を手元で試しつつ、関数直後に説明を書ける利点や、命名との役割分担を考察(`FibonacciSeries`、引数名 `x`・`n` など) - スコープとシンボルテーブル:呼び出しごとにローカルが作られること、名前解決の順序(ローカル → 外側スコープ → グローバル → ビルトイン)を整理。外側やグローバルへの代入には `nonlocal`/`global` が必要で、代入しない参照は可能という点を確認 - ループの `else` 節に言及:`while`/`for` が `break` されなかった場合に実行される独特の仕様であることを押さえた - 引数の渡し方を丁寧に読解:Python は「オブジェクト参照による呼び出し(call by object reference/call by sharing)」として捉えるのが適切で、ミュータブルを関数内で変更すると呼び出し元に反映される一方、仮引数名の再代入は影響しないことを確認。用語の整理のために C 言語のポインタ(`int*`)や C++ の参照(`int&`)とも対比 - 再帰呼び出しを含め、呼び出しのたびに新しいローカルシンボルテーブルが作られる点を確認 本動画は、ドキュメントをそのまま読み進めながら手を動かし、理解を確かめていく記録です。技術的な争点に対しては、特に着目した内容(`def` 構文、docstring、スコープと `global`/`nonlocal`、ループの `else`、引数の呼び出し規約と C/C++ との対比)を中心に扱っています。
Download
0 formatsNo download links available.