Pycharm: Escriba una lista de sugerencias de artículos

Mi pregunta es diferente porque cometí un error al utilizar la sugerencia de tipo.

Encontré un tipo raro de bisagra en pycharm: introduzca la descripción de la imagen aquí

Example es mi propia clase. Pero supongo que esto es menos importante porque el IDE se queja sobre el tipo de list que no define el método __getitem__ , lo cual no es cierto. Me pregunto si es un error o si lo usé de manera incorrecta.

Accediendo al PEP oficial para denotar la lista de objetos que debe usar typing.List , no list incorporada.

 from typing import List class Something: pass def f(seq: List[Something]): # no warning for o in seq: print(o) 

Łukasz explicó cómo corregir su código. Voy a explicar por qué el mensaje de error dice lo que hace.

list define __getitem__ , true, pero no es de lo que se queja el mensaje de error. El mensaje de error list que el type sí mismo, que es el tipo del tipo de list , no admite __getitem__ . Para que la list[whatever] sea ​​válida, el type tendría que definir un método __getitem__ , no una list .