elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  ¿Es la forma correcta de usar match...case? [Python 3.10]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Es la forma correcta de usar match...case? [Python 3.10]  (Leído 4,139 veces)
Yidu

Desconectado Desconectado

Mensajes: 133


Ver Perfil
¿Es la forma correcta de usar match...case? [Python 3.10]
« en: 8 Diciembre 2021, 21:20 pm »

Hola!

Estoy probando el match...case de la nueva versión de python 3.10. Y aunque se comporta según lo esperado (semejante a otros lenguajes), no se si esta sintaxis, en este caso que muestro es demasiado redundante:

Código
  1. numero = 90
  2. match numero:
  3.    case numero if numero > 110:
  4.        print('El numero es mayor')
  5.    case numero if numero < 100:
  6.        print('Es menor')

En este caso el resultado que imprime es "Es menor". Es un ejemplo simple. Y en este caso, supongo, sería mejor usar los IFs de toda la vida. Es decir, sin el match. Me llama la atención que se tenga que indicar tantas veces la variable numero. Es decir, dos veces por cada case. O quizás no lo estoy haciendo correctamente y no se recomienda esta estructura en un código así.

Saludos!


« Última modificación: 8 Diciembre 2021, 21:27 pm por Yidu » En línea

ErahUnderground

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: ¿Es la forma correcta de usar match...case? [Python 3.10]
« Respuesta #1 en: 9 Diciembre 2021, 15:37 pm »

Hola!

Por lo que yo sé, están implementando el "select case" de otros lenguajes, que al final se creó para realizar una lista de tareas y se adaptó usando en cada case un break para poder seleccionar "casos".

La sintaxis en sí, es redundante, pero porque en tu ejemplo estás seleccionando un intervalo.

Código
  1. option = 3
  2.  
  3. match option:
  4. \tcase 1:
  5. \t\t#code option1
  6. \t\t break
  7. \tcase 2:
  8. \t\t #code option2
  9. \t\ break
  10. \tcase 3:
  11. \t\tprint("Cerrando")
  12. \t\texit(0)
  13.  

No sé si así se entiende mejor :)
PD: No sé meter las tabulaciones jeje

Un saludo!


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Implementación GIT Cual es la forma correcta? « 1 2 »
Programación General
Pablo Videla 10 8,186 Último mensaje 5 Marzo 2015, 23:04 pm
por EFEX
Usar case
Bases de Datos
yoelrodguez 1 2,298 Último mensaje 17 Mayo 2015, 05:51 am
por ZeroVzla
[Pregunta]: Configurar php.ini de una forma correcta.
Desarrollo Web
Leguim 2 3,126 Último mensaje 6 Enero 2020, 10:36 am
por @XSStringManolo
error de sintaxis match case en python
Scripting
juanfelr 5 6,340 Último mensaje 18 Mayo 2022, 02:11 am
por juanfelr
¿Funciona match...case con pygame? [PYTHON 3.10]
Scripting
Yidu 5 4,610 Último mensaje 7 Noviembre 2022, 23:54 pm
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines