>>56
Sequenceの必須メソッドは__len__と__getitem__なんだけど
`def foo(x: Sequence) -> Sequence`の中身が例えば`return [x[1], x[2]]`だったとしたら使われるのは__getitem__だけ
__getitem__呼び出し時にそのメソッドがあるかないかは判定はしてるがxの型がSequenceと互換性があるかどうかは判定していない
これがダックタイピング