内部実装を読んで理解する『len()関数がオブジェクトの長さを手にいれる仕組み』 #pyconjp #pyconjp_203

len()関数がオブジェクトの長さを手にいれる仕組み Takayuki Shimizukawa @shimizukawa Pythonには文字列やリストなど、長さをもつオブジェクトがあります。長さを手に入れるには、文字列なら、name.length ではなく len(name) のようにlen関数を使います。len関数はどうやってnameに入っているオブジェクトの長さを手に入れているのでしょうか。if文にはTrue/Falseとなる条件式を指定しますが、それだけでなく文字や数字、自分で作ったデータ型も渡せます。if文はどうやって与えられたオブジェクトがTrueなのかFalseなのかを手に入れているのでしょうか。 この発表では、Pythonのプログラムがどうやって必要な情報を手に入れているのか、また、自分で実装するときにどう実装すればlen()やif文やfor文に指定できるのかを説明します。
5
前へ 1 ・・ 3 4
Hiroshi Tajima🌗 @Hiroshi_Taz

唐辛子増えてきたー。辛いの苦手・・・ #pyconjp_203

2017-09-08 14:24:34
taisa@テックタッチエンジニア @taisa831

iter -> アイター。イテラ(レ)って呼んでた。#pyconjp_203

2017-09-08 14:24:46
かべ @kabefloor

forってlistとかはそのまま処理してるイメージだったけどiteratorにしてたんだ。ほえぇ #Pyconjp #pyconjp_203

2017-09-08 14:25:49
ytakashina @takashinayuya

インターフェースを継承して実装するのと __len__() とかを勝手に実装してアダプターで呼ぶのはどう違うんだろう #pyconjp #pyconjp_203

2017-09-08 14:26:49
ミヒャエル@療養中 @mihyaeru21

アダプタパターンって言われると納得感あるよね #pyconjp_203

2017-09-08 14:29:47
くーむ@( o・ω・)ノ @cocodrips

len()はアダプタパターン! いろんな議論がある! #pyconjp_203

2017-09-08 14:29:58
麻木浅葱 / ARメタバース @asagi_00a3af

#pyconjp #pyconjp_203 なるほどなー。 経緯と歴史。議論がされていないわけがないので、頭ごなしに「おかしい」というのではなく、その実装になっている意図を読もう、と。

2017-09-08 14:30:54
ミヒャエル@療養中 @mihyaeru21

「頭の良い人たちが過去に議論し尽くしてる」それなんだよなぁ #pyconjp_203

2017-09-08 14:31:17
麻木浅葱 / ARメタバース @asagi_00a3af

#pyconjp #pyconjp_203 公式リファレンス・デザインと歴史のFAQが面白いらしい

2017-09-08 14:32:22
さわでぃさん🍅🦒🗼🐴💻⚓ @sawadyrr5

オープンソースだけあって原典を探るには公式ドキュメントに行き着くんだなあ #pyconjp_203

2017-09-08 14:32:29
Hiroshi Sano @hrs_sano645

今から変えるとインパクトでかい #pyconjp_203

2017-09-08 14:32:32
くーむ@( o・ω・)ノ @cocodrips

Pythonのデザインに関してのFAQがいろいろ!! "デザインと歴史 FAQ — Python 3.6.2 ドキュメント - docs.python.org/ja/3/faq/desig…" #pyconjp_203

2017-09-08 14:33:58
くーむ@( o・ω・)ノ @cocodrips

めっっちゃおもしろかったしし、わかりやすかった!!! 気になってた所がさっぱりしたし自分でもっとPythonの実装見ていきたい(∩´∀`)∩ #pyconjp_203

2017-09-08 14:36:03
matoba @mtb_beta

#pyconjp_203 色々勉強になりました。

2017-09-08 14:36:13
麻木浅葱 / ARメタバース @asagi_00a3af

#pyconjp #pyconjp_203 一つの効果として独自実装的に.size(), .len(), .length()の混合を避けられるというものがあるらしい

2017-09-08 14:36:23
ぐでら @gudegude55

len()はAdapterなのか~ と、わかったことだけ言ってみる #pyconjp

2017-09-08 14:39:13
前へ 1 ・・ 3 4