Especifique el tipo de argumento para la lista de diccionarios para Python

En este artículo, veremos cómo podemos especificar el tipo de argumento para una lista de Dictionary for Python

Como sabemos, Python es un lenguaje de tipo dinámico, por lo que el tipo de datos de una variable puede cambiar en cualquier momento. Si una variable que contiene un número entero puede contener una string en el futuro, lo que puede generar errores de tiempo de ejecución, por lo tanto, conocer el tipo de datos de los argumentos se vuelve importante para una función. Aquí usaremos un módulo de escritura de Python que nos ayudará a resolver este problema.

Entonces, en general, podemos escribir una función en Python como:

Python3

def add(a, b):
    return a+b

Pero aquí, no sabemos si la función ‘agregar’ acepta valores int o float. Las anotaciones de función PEP 3107 ahora nos permiten escribir nuestro código como:

Python3

def add(a: int, b: int) -> int:
    return a+b

Ahora podemos saber fácilmente leyendo el código cuál es el tipo de datos esperado de los parámetros y la salida. 

Entonces, ahora para especificar el tipo de argumento para la lista de diccionarios para una función de python. Será tan simple como

Ejemplo 1:

Aquí podemos ver:

  • El tipo de datos para los argumentos.
  • El tipo de salida es una lista que contiene un Diccionario con valores: una string y un entero .

Python3

# typing is a standard library
from typing import List, Dict
  
  
def GetData(name: str, age: int) -> List[Dict[str, int]]:
    return [{'name': name, 'age': age}]
  
print(GetData('Sandeep Jain', 35))

Producción:

[{'name': 'Sandeep Jain', 'age': 35}]

Ejemplo 2:

En este ejemplo, estamos utilizando la comprensión de listas para obtener una Lista de diccionarios. 

Python3

# import library
from typing import List, Dict
  
# define function
def get_list_of_dicts(name: str, category: str) -> Dict[str, str]:
    return [{'name': name, 'category': category}]
  
Fruit = ["Mango", "tomato", "potato", "papaya"]
Fruit_type = ["fruit", "vegetable", "vegetable", "fruit"]
  
res = [get_list_of_dicts(Fruit[i], Fruit_type[i]) for i in range(3)]
  
print(res)

Producción:

[[{‘nombre’: ‘a’, ‘apellido’: 1}], [{‘nombre’: ‘b’, ‘apellido’: 2}], [{‘nombre’: ‘c’, ‘apellido’ : 3}]]

Publicación traducida automáticamente

Artículo escrito por ayushmankumar7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *