equivalente a los scripts matlab en python

Hace poco me mudé de matlab a python y me estoy perdiendo lo que matlab llamó scritps. Un script es como una función que no tiene variables que usted introduce o la salida. En cambio, ve el espacio de trabajo en el que lo estás llamando, y luego todo lo que crea es entonces accesible en el espacio de trabajo después de su carrera.

()Aquí. es un video introduciendo el concepto de scripts matlab)

Por ejemplo, si su espacio de trabajo es inicialmente los objetos a, b y c. Si usted quería una función que consigue d desde a, b y c podrías diseñarlo para que puedas llamarlo como:

d = MyFunc(a,b,c)

Alternately if it was a script, you could call it with:

MyScript

Esto es útil - porque si usted tiene código que usted quiere segregar pero ejecutar en todo el espacio de trabajo no tiene que escribir

d = MyFunc1(a,b,c)
e = MyFunc2(a,b,c,d)
f = MyFunc2(a,b,c,d,e)

pero podrías escribir

MyScript1
MyScript2
Myscript3

[Esto es enormemente útil para el procesamiento de datos científicos donde usted puede tener un gran espacio de trabajo con muchas variables- y usted quiere hacer un montón de operaciones que toman un gran número de estas variables - pero usted quiere segregarlos en bloques de código que son llamados por un archivo principal por lo que es más fácil de leer]

Pregunta hecha hace 3 años, 5 meses, 0 días - Por debugdynamo46a0


3 Respuestas:

  • Con el fin de ejecutar guion tipo matlab, desde el fichero principal. Py:

    exec(open('MyScript1.py').read())

    Respondida el Dec 16, 2020 a las 11:08 - por codecanvas

    Votos positivos: 0 | Votos negativos: 0

  • En Python, puedes lograr un comportamiento similar a los scripts de MATLAB creando funciones en un script y luego importándolas en el script principal donde deseas utilizarlas. De esta manera, tendrás acceso a todas las variables del espacio de trabajo en el que se ejecuta el script principal. Aquí te muestro un ejemplo:

    • En un archivo llamado `MyScript1.py`, defino una función `MyFunc1` que toma como entrada `a`, `b` y `c`, y devuelve `d`:
    python
    

    MyScript1.py

    def MyFunc1(a, b, c): d = a + b + c return d
    • En un archivo llamado `MyScript2.py`, defino una función `MyFunc2` que toma como entrada `a`, `b`, `c`, y `d`, y devuelve `e`:
    python
    

    MyScript2.py

    def MyFunc2(a, b, c, d): e = a + b * c - d return e
    • En tu script principal, puedes importar las funciones definidas en los scripts anteriores y utilizarlas con todas las variables del espacio de trabajo:
    python
    

    Script principal

    from MyScript1 import MyFunc1 from MyScript2 import MyFunc2

    Definir el espacio de trabajo con las variables a, b y c

    a = 2 b = 3 c = 4

    Llamar a las funciones importadas

    d = MyFunc1(a, b, c) e = MyFunc2(a, b, c, d) print(d) print(e)

    Al ejecutar el script principal, tendrás acceso a las variables a, b y c dentro de las funciones MyFunc1 y MyFunc2 y podrás obtener resultados como en el ejemplo de MATLAB que proporcionaste.

    Recuerda que la ventaja de este enfoque en Python es que puedes modularizar tu código en diferentes archivos y mantener un espacio de trabajo más limpio y organizado. Espero que esta explicación te sea útil.

    Respondida el Dec 17, 2020 a las 11:09 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • En Python, puedes simular el comportamiento de los scripts de MATLAB utilizando la siguiente técnica:

    • Crea un archivo con extensión `.py` y guarda el código que deseas ejecutar como script.
    • En el archivo principal desde el que deseas llamar al script, importa el módulo que contiene el script utilizando la instrucción `import`.
    • Llama a las funciones o ejecuta el código del script utilizando el nombre del módulo seguido de un punto y el nombre de la función o el código que deseas ejecutar.

    Ejemplo:

    script.py

    python
    def suma(a, b):
        return a + b
    
    def resta(a, b):
        return a - b
    

    archivo_principal.py

    python
    import script
    
    

    Llama a las funciones del script

    suma_resultado = script.suma(1, 2) resta_resultado = script.resta(3, 1)

    Accede a las variables creadas en el script (si las hay)

    print(suma_resultado)

    Imprime 3

    print(resta_resultado)

    Imprime 2

    Cuando ejecutas archivo_principal.py, se importará el módulo script y se podrán llamar las funciones y acceder a las variables creadas en el script como si estuvieran definidas en el archivo principal.

    Nota:

    Los scripts de Python no tienen que tener un punto de entrada definido (como la función main() en algunos lenguajes). Puedes utilizar el módulo exec para ejecutar código arbitrario dentro del espacio de nombres actual, pero no es recomendable para este propósito.

    Respondida el Dec 17, 2020 a las 11:14 - por Gemini

    Votos positivos: 0 | Votos negativos: 0