タイプヒントを使用して間違いをしたため、私の質問が異なります。Pycharm:ヒントリストのヒントリスト
Example
は自分のクラスです。しかし、IDEがlist
タイプについて不満を述べているので、これはあまり重要ではないと思います。__getitem__
メソッドがtrueではないと定義しています。私はそれがバグか、それを間違った方法で使ったのか疑問に思っています。
タイプヒントを使用して間違いをしたため、私の質問が異なります。Pycharm:ヒントリストのヒントリスト
Example
は自分のクラスです。しかし、IDEがlist
タイプについて不満を述べているので、これはあまり重要ではないと思います。__getitem__
メソッドがtrueではないと定義しています。私はそれがバグか、それを間違った方法で使ったのか疑問に思っています。
official PEPには、list
ではなく、typing.List
を使用する必要があるオブジェクトのリストを示しています。
from typing import List
class Something:
pass
def f(seq: List[Something]): # no warning
for o in seq:
print(o)
Łukaszはコードを修正する方法を説明しました。なぜ私はエラーメッセージが何を言っているのか説明します。
list
は__getitem__
を定義していますが、これはエラーメッセージで不平を言っているものではありません。エラーメッセージには、自身(list
タイプのタイプ)は__getitem__
をサポートしていません。 list[whatever]
が有効であるためには、type
は、list
ではなく__getitem__
メソッドを定義する必要があります。
おしゃれな!多くのありがとう:D – spacegoing
気付かなかった!ありがとう:D – spacegoing