Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: juanfelr en 17 Mayo 2022, 03:36 am



Título: error de sintaxis match case en python
Publicado por: juanfelr en 17 Mayo 2022, 03:36 am
Saludos comunidad.

les comparto esta situacion que me sucede con el comando match case:

Tengo el codigo que escribo a continuacion, el cual ejecuto en dos plataformas, con exactamente el mismo codigo.

Código:
name=input("What's your name?: ")

match name:
    case "Harry":
        print("Gryffindor")
    case "Hermione":
        print("Gryffindor")
    case "Ron":
        print("Gryffindor")
    case "Draco":
        print("Slytherin")
    case _:
        print("Who?")

El codigo tal como está lo ejecuto en visual studio code en la nube y funciona correctamente.

Después lo ejecuto en python version 3.6.9 en Linux mint y me sale el siguiente error:

Código:
  File "house.py", line 3
    match name:
                      ^
SyntaxError: invalid syntax

Alguién me podría sacar de esta inquietud tan extraña?

Mil gracias y feliz noche


Título: Re: error de sintaxis match case en python
Publicado por: juanfelr en 17 Mayo 2022, 04:12 am
Saludos.

Luego de indagar mas en el tema, encontre que la última versión de python es la 3.10 y la instale. La que tenia (python 3.6) no soportaba esa sintaxis.

Espero que a alguien mas le sea de utilidad esta información.

Feliz noche a todos.


Título: Re: error de sintaxis match case en python
Publicado por: Danielㅤ en 17 Mayo 2022, 04:23 am
Hola Juan, me alegro que hayas podido solucionar el problema que tenías con tú código y te agradezco por comentarnos como lo has solucionado, esto ayudará a otros usuarios.

Feliz noche para vos también!


Saludos


Título: Re: error de sintaxis match case en python
Publicado por: Tachikomaia en 17 Mayo 2022, 06:01 am
¿O sea que 3.6 > 3.10? No sabía que la codificación era así  :-\


Título: Re: error de sintaxis match case en python
Publicado por: Danielㅤ en 17 Mayo 2022, 15:00 pm
¿O sea que 3.6 > 3.10? No sabía que la codificación era así  :-\

No, al revés, él está comentando que la última versión es la 3.10 mientras que él tenía la 3.6 y al actualizar la versión del intérprete (a la v3.10) ha podido solucionar su problema.


Saludos


Título: Re: error de sintaxis match case en python
Publicado por: juanfelr en 18 Mayo 2022, 02:11 am
Hola Juan, me alegro que hayas podido solucionar el problema que tenías con tú código y te agradezco por comentarnos como lo has solucionado, esto ayudará a otros usuarios.

Feliz noche para vos también!


Saludos

Por supuesto Daniel, con gusto comparto el procedimiento:

Actualicé escribiendo las siguientes lineas en el terminal:


sudo apt install software-properties-common -y

sudo add-apt-repository ppa:deadsnakes/ppa -y

sudo apt update

sudo apt install python3.10

Lo anterior lo pueden encontrar en el siguiente enlace: https://www.linuxcapable.com/es/how-to-install-python-3-10-on-linux-mint-20/

Y para ejecutar el programa escribo "python3.10 house.py"

Mil gracias por estar atentos y espero que les sea útil esta información.