隆Te damos la bienvenida a este reto!

1

Empezando con Python desde 0

D铆a 1

2

Variables, funciones y sintaxis b谩sica

3

Tipos de datos: Numbers, Strings y Diccionarios

4

Playground - Retorna el tipo

D铆a 2

5

Operadores

6

Playground - Calcula la propina

D铆a 3

7

Condicionales

8

Playground - Averigua si un a帽o es bisiesto

9

Ciclos

10

Playground - Dibuja un triangulo usando bucles

D铆a 4

11

Listas

12

Encuentra a los gatitos m谩s famosos

13

Diccionarios

14

Obt茅n el promedio de los estudiantes

15

Tuplas

16

Obten la informaci贸n de los paquetes

D铆a 5

17

Calcula la cantidad de letras en una oraci贸n

18

Encuentra el mayor pal铆ndromo

D铆a 6

19

Sets

20

Encuentre la intersecci贸n de conjuntos

D铆a 7

21

List comprehension

22

Encuentra palabras con dos vocales

23

Dictionary Comprehension

24

Calcula la longitud de las palabras

D铆a 8

25

Funciones Lambda

26

Filtra mensajes de un user espec铆fico

27

Higher order functions

28

Crea tu propio m茅todo map

D铆a 9

29

Manejo de Errores y excepciones

30

Maneja correctamente los errores

31

Maneja las excepciones

D铆a 10

32

Playground - Crea un task manager usando closures

D铆a 11

33

Lectura de archivos de texto y CSV

D铆a 12

34

Programaci贸n orientada a objetos

35

Crea un auto usando clases

D铆a 13

36

Abstracci贸n en Python

37

Playground - Crea un sistema de carrito de compras

38

Encapsulamiento en Python

39

Playground - Encapsula datos de los usuarios

D铆a 14

40

Herencia en Python

41

Playground - Jerarqu铆a de animales usando herencia

D铆a 15

42

Polimorfismo en Python

43

Playground - Implementa un sistema de pagos

D铆a 16

44

Estructuras de datos en Python

45

Playground - Crea tu propia lista en python

46

Hash tables en Python

47

Playground - Implementaci贸n de una HashTable para Contactos

D铆a 17

48

Maps en Python

49

Playground - Crea un task manager con Maps

D铆a 18

50

Singly Linked List en Python

51

Playground - Implementaci贸n de una singly linked list

D铆a 19

52

Stacks en Python

53

Playground - Implementaci贸n de un stack

D铆a 20

54

Queues en Python

55

Playground - Implementaci贸n de una queue

D铆a 21

56

隆Lo lograste!

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Playground - Retorna el tipo

4/56

Aportes 68

Preguntas 6

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Recuerden en los playground colocar alg煤n escudo antispoiler con puntitos o im谩genes as铆 no se hace spoiler de las soluciones a otros Platzinautas 馃挌
.

.
.
.
.
.
.
.
.

def found_type(value):
   return type(value)

Me result贸 confusa la consigna ya que pone que la funci贸n es 鈥渟olution鈥 pero en el playground la funcion es 鈥渇ound_type鈥. Por otro lado, los output del ejemplo figuran como 鈥渘umber鈥, 鈥渟tring鈥, etc; pero al correr un print de la funcion en la consola con un valor de 35, por ejemplo, en la consola el output es 鈥<class 鈥榠nt鈥>鈥.
No s茅 si a alguien le pas贸 algo similar.

La clase deberia llamarse 鈥渃omo confundir al alumno e incentivarlo a ver otro curso o cambiar de profesion鈥

Debo quejarme que en los contenidos te贸ricos no se mencion贸 la funci贸n 篓return篓, q e me fue imposible hacer este ejercicio (soy principiante)

Es la primera vez que hago un ejercicio en un playground de platzi y no s茅 si todos son as铆, pero me cost贸 mucho trabajo entenderle, principalmente por inconsistencias por parte de la gu铆a y el playground (nombre de la funcion, valor a retornar, etc.) y en parte tambi茅n porque soy nuevo en el lenguaje y desconoc铆a temas como en donde iba el c贸digo (desconoc铆a del 鈥榩ass鈥). Igual pude pasarlo c:

Las instrucciones son confusas, el Output de ejemplo no concuerda con lo evaluado por los test, el playground no me funciono desde el primer intento.

D铆a_01 馃敟 Quemaduras gratis del reto {antes de resolverlo} 鈿狅笍SPOILER鈿狅笍

  • Que la funci贸n no se ten铆a que llamar Solution, pod铆a quedar por defecto como found_type.
  • Que no era necesario que la impresi贸n sea estrictamente literal como lo especificado en el reto: 鈥渘umber鈥 o 鈥渟tring鈥. Puede quedar como la simple impresi贸n dada con el m茅todo type( ) : <class 鈥榠nt鈥> , <鈥榗lass bol鈥>
  • Que si reduzco el tama帽o de la ventana (en Chrome) y vuelvo a maximizarlo ya no puedo ver los botones 鈥淓jecutar鈥 y 鈥淧ruebas鈥

Estuvo un poco confuso todo, debido al nombre de la variable y el ejemplo ya que el output en el ejemplo pareciera que fueran string como resultado. por ejemplo algo asi

def found_type(value):
   if type(value) == int:
      return print("number")
   elif type(value) == str:
      return print("string")
   else:
      return print("boolean")

found_type(1)
found_type("Dieguilo")
found_type(True)

Pero al final solo rea retornar el tipo jeje

Como sufr铆 con el ejercicio. No quer铆a leer los spoiler pero despu茅s de d铆as me cans茅. Era solo cambiar el nombre de la funci贸n -_-! La gu铆a hizo confundir mucho


.
.
.
.
.

Mi Soluci贸n
.
.
.

.
.
.

def found_type(value):
   dato = type (value)
   return dato

found_type(1)
found_type("Dieguito")
found_type(True)

print(found_type)

Lo que solo debemos hacer es solo retornar el tipo de datos solo creamos una variable gen茅rica y luego la retornamos por el print. para que de que tipos de datos son.

Lo explico mejor:

En este desafio debras crear una funcion, pasarle un parametro de la siguiente lista y hacer que en la consola nos devuelva el tipo de dato que corresponde a cada parametro

Lista de datos:

  • 1
  • 鈥淒ieguillo鈥
  • True

Si lo haces bien, veras que hay 鈥渘umber鈥, 鈥渟tring鈥 y 鈥渂oolean鈥.

solucionado en una l铆nea de c贸digo 馃ぃ
.
.
.
.
.

Esta fue la soluci贸n que propuse

def found_type(value):
   num = 1
   name = 'Dieguillo'
   civil = True

   print(type(num))
   print(type(name))
   print(type(civil))

Claro estuvo mal, no entend铆 el ejercicio, pero bueno es parte de lo que dicen, programar es frustrante y estos ejercicios son para manejar la frustraci贸n, no siempre vamos a estar bien, lo importante es intentar hacerlo y aprender de ello


.
.
.
.
.

def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   return type(value)

Super ambigua la explicaci贸n con el spanglish. Casi que no lo logro.

yo lo resolvi asi!

def found_type(value):
   if type(value) == int: print('number')
   elif type(value) == bool:  print('boolean')
   elif type(value) == str: print('string')
   return      

found_type(1)
found_type('Dieguillo')
found_type(True)>

Soy senior en Javascript. Estoy viendo los basics de python para aprender un poco sobre la sintaxis m谩s profesional posible. El Playground no me funciono tan bien al intentar hacer una funcion lambda a pesar que era el mismo resultado鈥

Tengo un c贸digo diferente, s茅 que es m谩s largo pero no imprime en pantalla <class 鈥榠nt鈥>, <class 鈥榮tr鈥> 贸 <class 鈥榖ool鈥> sino que se apega al Output solicitado que es de tipo String: 鈥渘umber鈥, 鈥渟tring鈥 贸 鈥渂oolean鈥 (que estrictamente era el tipo de salida solicitada) para esto us茅 la funci贸n isinstance(valor,tipo)
Lo prob茅 antes en el IDLE de Python 3.11.4

def solution(valor):
if isinstance(valor, bool):
print(鈥渂oolean鈥)
elif isinstance(valor, str):
print(鈥渟tring鈥)
elif isinstance(valor, (int, float)):
print(鈥渘umber鈥)
else:
print(鈥淭ipo de dato no considerado!鈥)

PRUEBAS

solution(1)
solution(鈥楧ieguillo鈥)
solution(True)

Al ejecutarlo en el IDLE funciona perfecto de acuerdo a la Gu铆a pero en la plataforma marc贸 error.
Espero les ayude en algo.

Deber铆an de modificar la redacci贸n de este ejercicio. Me cost贸 entender que con: 鈥渆ncontrar谩s una funci贸n llamada solution que recibe un par谩metro llamado valor鈥 se refer铆an a la funci贸n ya escrita con el nombre 鈥渇ound_type鈥 y el par谩metro 鈥渧alue鈥. Este cambio de nombres solo provoca confusi贸n. Y peor a煤n, cuando cambi茅 el nombre de la funci贸n a 鈥渟olution鈥, ocurri贸 un error ya que el import busca la funci贸n 鈥渇ound_type鈥. 馃檮

No jodas quien hizo esa guia? A lo bien estamos formando desarrolladores de software con esa vaina? Requerimientos bien planteados como van aponer eso

La verdad un poquito confusa la gu铆a pero me alegra poder haber descubierto por mi parte la soluci贸n.

Listo:
value = # Aqu铆 se ingresa el dato
def found_type(value):
Tipo = type(value)
return Tipo
print(f"Dato ingresado: {value}, Tipo de dato:{found_type(value)}")

Es un poco confuso el reto. Las pruebas verifican si el retorno de la funci贸n es del mismo tipo del par谩metro de entrada, pero la gu铆a sugiere que el output o retorno debe ser un cadena de texto que diga 鈥渘umber鈥, 鈥渟tring鈥 o 鈥渂oolean鈥

para que al correr el programa no se genere error se debe de conservar el valor que viene por defecto en la funci贸n 鈥渄ef found_type(valor):鈥 , no se debe de cambiar por 鈥渟olution鈥

la gu铆a del ejercicio esta mal o por lo menos el ejemplo de salida, si queremos conseguir un resultado como el que proporcionan en el ejemplo de salida hay que hacer algo mas que solo 2 l铆neas xq en el ejemplo se espera un string como respuesta (鈥渘umber鈥) y no lo siguiente: <class 鈥榮tr鈥> o <class 鈥榠nt鈥> con el siguiente c贸digo se obtiene una respuesta con formato string:

def found_type(value):
    # Tu c贸digo aqu铆 馃憞
    tipos = [['string', 'string'], [1, 'number'], [1.0, 'boolean']]
    for tipo, etiqueta in tipos:
        if type(value) == type(tipo):
            return etiqueta
        else:
            return None


value = 'hola' # cambiar el valor

print(found_type(value)) # output = string

Versi贸n breve usando 鈥淒iccionarios鈥 (especie de lista soportada en Python):

def found_type(input_data):
    data_types = {
        int: "number",
        str: "string",
        bool: "boolean"
    }
    return data_types.get(type(input_data), "unknown") # el parametro de string para reportar excepcion

print (found_type(Ingrese_valor_aca)) #para imprimir el resultado

Esta es una version alternativa a los 麓if麓, Platzi no lo vale 馃槙 pero funciona, te lo juro por Dieguito Maradona.


.
.
.
.
.

def found_type(value):
   return type(value)

def solution(value):
   return str(found_type(value)


*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*

def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   return type(value)
   pass

Seg煤n el 鈥淓jecutar鈥 este c贸digo jala, pero al correr las pruebas da error.
.
.
.

.

.
.

.

def solution(valor):
   # Tu c贸digo aqu铆 馃憞
   if type(valor) == int:
      print('number')
   elif type(valor) == str:
      print('string')
   elif type(valor) == bool:
      print('boolean')
   pass

solution(1)
solution("Dieguillo")
solution(True)```

ya esta![

def found_type(value):
    return type(value)

Me arroja error pero creo que esta bien jajajaj

Hola todos!. Les comparto la funci贸n que codifiqu茅 (tuve problemas con la consola de Platzi, al primer intento hubo error y al segundo se bugue贸).

La funci贸n tiene dos opciones de salidas

  1. Tipo Lista
  2. Tipo Individual

Ojal谩 les guste 馃槂

Saludos a todos.

def solution(value):
    """
    Return a string representation of the type of the given value.
    """

    type_mapping = {
        int: "number",
        float: "number",
        str: "string",
        bool: "boolean"
    }

    return type_mapping.get(type(value), "unknown")


# Define test inputs
inputs = [1, "Dieguillo", True]

# Option 1: Display the results as a list
results_list = [solution(val) for val in inputs]
print("\nList Output:")
print(results_list)
# Expected result: ['number', 'string', 'boolean']

# Option 2: Display each result individually
print("\nIndividual Outputs:")
print(solution(1))  # Expected output: 'number'
print(solution("Dieguillo"))  # Expected output: 'string'
print(solution(True))  # Expected output: 'boolean'

Captura de los reaultados

GG
.
.
.
.
.
.

.
.
.
.

.
.
.

.
.
.

.
.
.
.

.
.

.
.
.
.

.
.
.

def found_type(value):
   return type(value)
   pass

El ejercicio esta mal planteado

Se nos dice que de output debe salir 鈥渘umber鈥 鈥渟tring鈥 y 鈥渂oolean鈥, hice la l贸gica para que diera ese resultado y me quedo as铆

def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   if (isinstance(value, str)):
      return 'string'
   elif (isinstance(value, bool)):
      return 'boolean'
   elif (isinstance(value, int)):
      return 'number'
   pass

La funci贸n devuelve exactametne lo que dice el ejercicio debo devolver de output

No obstante no funciona porque la soluci贸n es devolver el type de python, y el type de python no devuelve el outuput que plantea la gu铆a, lo devuelve de esta manera : 鈥<class 鈥榮tr鈥>鈥, 鈥<class 鈥榠nt鈥>鈥, 鈥<class 'bool>鈥.
Entonces la soluci贸n seg煤n el playground es esta

def found_type(value):
   return type(value)

response = found_type(1
print(response))#output <class 'int'>

response = found_type("Dieguillo")
print(response)#output <class 'str'>

response = found_type(True)
print(response)#output <class 'bool'>

Como vemos en ning煤n momento de output tenemos 鈥渘umber鈥, 鈥渟tring鈥 o 鈥渂oolean鈥

def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   return type(value)
   pass

Intent茅 con mis soluciones y ninguna dio al clavo, copio y pego las de los dem谩s compa帽eros que colocan en los comentarios y tampoco me sirven xD. Dejo aqui una soluci贸n:

def found_type(value):
   if type(value) == int:
      print("number")
   elif type(value) == str:
      print("string")
   elif type(value) == bool:
      print("boolean")
   else:
     print('F en el chat')

found_type(1)
found_type("Dieguilo")
found_type(True)

.def found_type(value):

Tu c贸digo aqu铆 馃憞

return type(value)

tipo = found_type(1)
print(tipo)

tipo = found_type(鈥淒ieguillo鈥)
print(tipo)

tipo = found_type(True)
print(tipo)

Hola:
Les comparto mi c贸digo.

print(solution(1))
print(solution(鈥淛ohn鈥))
print(solution(True))

def solution(value):
tipo_dato = type(value)

if tipo_dato == int or tipo_dato == float:
return "number"
elif tipo_dato == str:
return "string"
else:
return 鈥渂oolean鈥

El validador de la prueba esta malo siempre da ok

Por alguna raz贸n no me imprime el resultado con return dentro de la funci贸n, as铆 que use print y de esa forma si me manda el resultado de la funci贸n al pasar los datos una vez llamada.

Hola buenas. la guia esta erronea para lo esperado.

Soluci贸n 馃槃鈥
.

.
.
.
.

def found_type(value):
   return type(value)
   pass
found_type = lambda value: type(value)

En esta actividad aprend铆 que lo m谩s importante es no estresarse y seguir las instrucciones. No estaban pidiendo retornar ni imprimir el resultado, aunque evidentemente eso era 煤til. Solo ped铆an conocer el tipo del valor.

Mi soluci贸n fue esta:

type(value)

Despu茅s hice esta

return type(value)

la verdad perd铆 las tres vidas, porque la verdad no fue nada claro el ejercicio o yo no entend铆, al ver que en el ejemplo sal铆a 鈥渘umber鈥 pues pens茅 que la funci贸n tenia que dar eso de respuesta a los n煤meros, pero al ver la soluci贸n era solo poner type, pero el output te type es <class 鈥榠nt鈥>, lo siento pero no me quedo nada claro

Si bien la letra no es f谩cil de comprender se llego a una soluci贸n:

El ejercicio a mi criterio no est谩 planteado de una manera que se entienda lo que se debe hacer o al menos yo no lo entend铆, en fin. Luego de muchos cabezazos (muchos mas de los tres corazones) esta es mi propuesta de soluci贸n

Alerta anti - Spoiler
.
.
.
.
.
.
""鈥
dependiendo lo que quiero evaluar
se comenta la linea de valor 1,2 贸 3
"鈥"

#valor: int = 23
#valor: str = "Dieguillo"
valor = True
def solution(valor):
# C贸digo de la funci贸n
return type(valor)
respuesta = solution(valor)
print(respuesta)

Mi solucion fue:

def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   return type(value)

print(found_type(1))
print(found_type("Dieguillo"))
print(found_type(True))

Antes de que se frustren y se sientan confundidos, solo debemos programar la funci贸n. No es necesario hacer el llamado ni pedir los inputs en este reto, adem谩s recuerden revisar otros comentarios despu茅s de finalizar el reto para aprender otras maneras de resolverlo

Llegu茅 al mismo output pero de manera diferente 馃槢

Lo logr茅 luego de muchos intentos, es mucho m谩s sencillo de lo que uno piensa. Creo que las instrucciones no ayudan mucho a entender el ejercicio de manera correcta.

SPOILER ALERT !!!

Listo, un poco confuso para enteder las instrucciones pero se logr贸

Tambi茅n tuve mucha confusi贸n, pero al parecer se logr贸.

Me costo, consegu铆 obtener en consola el resultado:
<class 鈥榠nt鈥>
<class 鈥榮tr鈥>
<class 鈥榖ool鈥>

Pero al correr la prueba me gener贸 error, luego falle las 3 veces y me dio la opci贸n de ver la soluci贸n, el cual era un poco diferente pero al ejecutar, en consola el resultado era el mismo que ya obtuve haci茅ndolo a mi manera, por lo que tengo la duda de si la consigna era en obtener el resultado esperado, o escribir el c贸digo exactamente igual a la soluci贸n.

No habia terminado todo los cursos de Fundamentos de Python pero si se pudo馃悕

def found_type(value):
   resultado = type(value)
   return resultado
x = found_type("Pepe")
print(x)


.
.
.
.
.
.
.
.
.
.

Seg煤n el enunciado deber铆a ser:

def solution(valor):
   return type(valor)

Seg煤n la funci贸n que muestra el Playground:

def found_type(value):
   return type(value)

En Brave no me permite ejecutar el Playground 馃槬, alguien sabe como solucionarlo?

El ejemplo esta confuso, no concuerda con la respuesta dada como correcta en la prueba

El ejemplo indica que el output debe ser number, string, boolean

Pero el output con el que se evaluan las pruebas son int, str bool

La funcion segun la consigna del desafio debe llamarse solution y seria este codigo

def solution(value):
   # Tu c贸digo aqu铆 馃憞
   if type(value).__name__ == 'int':
      tipo = 'number'
   elif type(value).__name__ == 'str': 
      tipo = 'string'
   elif type(value).__name__ == 'bool': 
      tipo = 'boolean'
   else: tipo = 'float'
   return print(tipo)

Saludos
Como hago para subir una imagen de mi soluci贸n?
Donde la puedo subir para luego colocarla aqui?
Gracias

def found_type(value):
return type(value)

test_numbers

test_strings

test_booleans

隆Felicidades, todas las pruebas pasaron!
def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   tipo_dato = type(value).__name__
   return tipo_dato

resultado = found_type("Ron")
print(resultado)

Ten铆a entendido que no era obligatorio hacer los cursos para hacer el reto, pero con la explicaci贸n que dan en las lecturas no es suficiente. Yo solo llevaba el de fundamentos y voy en la mitad del de funciones y sin eso definitivamente no la hubiera logrado. Sin embargo, ac谩 est谩 mi soluci贸n:

def found_type(value):
   return type(value)
def found_type(value):
   # Tu c贸digo aqu铆 馃憞
   return type(value)


.
.
.
.

def found_type(value):
   return type(value)

las funciones en python pueden retornar un elemento, en este caso, con solo utilizar return type(value) se cumple con el requerimiento del reto.

Mi soluci贸n.

.
.
.

def found_type(value):
   tipoDato = type(value)
   return tipoDato
undefined