プロポーザル
これは応募されたプロポーザルです。聞きたいと思うプロポーザルを各ページの下部にあるSNSのボタンで拡散しましょう。拡散された投稿をプロポーザルへの投票としてカウントし、選考時に参考にさせていただきます。
talk
len()関数がオブジェクトの長さを手にいれる仕組み(ja)
スピーカー
Takayuki Shimizukawa
対象レベル:
初級
カテゴリ:
Core Python (Language, Stdlib)
説明
Pythonには文字列やリストなど、長さをもつオブジェクトがあります。長さを手に入れるには、文字列なら、name.length ではなく len(name) のようにlen関数を使います。len関数はどうやってnameに入っているオブジェクトの長さを手に入れているのでしょうか。if文にはTrue/Falseとなる条件式を指定しますが、それだけでなく文字や数字、自分で作ったデータ型も渡せます。if文はどうやって与えられたオブジェクトがTrueなのかFalseなのかを手に入れているのでしょうか。
この発表では、Pythonのプログラムがどうやって必要な情報を手に入れているのか、また、自分で実装するときにどう実装すればlen()やif文やfor文に指定できるのかを説明します。
目的
Pythonのオブジェクトの動作がどうやって決まっているのかを把握してもらうために、具体的な実装と動作を紹介します。その背景には、Pythonのプロトコルという概念があります。しかし、本トークでは難しい概念は置いといて、Python初級者に分かりやすい言葉で仕組みを説明していきます。そして、中級者へとステップアップする足がかりとなる情報をお伝えします。
概要
- 脱初心者、のためのデータ型入門
- `len()` はどうやってオブジェクトの長さを手に入れているのか
- `if` はどうやって指定したオブジェクトを使っているのか
- `for` はどうやって指定したオブジェクトを使っているのか
- データ型が長さを返す、条件式に使える、繰り返し可能、のような動作を満たすための条件、プロトコル
- まとめ