python / python/mypy

Proper way to use dynamic keys for TypedDict

Abierto
#9,168 9 comentarios 6 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

false-positive feature priority-2-low topic-literal-types topic-typed-dict
Lenguaje dominante
Python
Estrellas
20.6k
Forks
3.3k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

Is there a way to use dynamic keys for a TypedDict which is properly typed? I have code like this:

if name in ['visible', 'value', 'locked']:
	obj[name] = self.use_var_expr(scope, value)

Where obj is a TypedDict that has the same type for the keys 'visible', 'value', 'locked'.

I know that name is not a literal string, but it's been verified to belong to a set of literal strings that belong to the TypedDict.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce la asignación de TypedDict mostrada en el issue, centrándote en la comprobación de pertenencia frente a ['visible', 'value', 'locked']. Determina si mypy puede comprobar los tipos de este patrón; se considera terminado cuando el patrón se acepta con tipos correctos o se documentan la limitación y la alternativa compatible.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
devtools
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.