Python4Delphi: Integración de Python y Delphi

Python4Delphi: Integración de Python y Delphi

Python4Delphi es un conjunto de componentes gratuitos que permiten integrar Python en Delphi y Lazarus (FPC). Con Python4Delphi, es posible ejecutar código Python, crear módulos Python y llamar a bibliotecas Python desde Delphi.

Instalación

La instalación de Python4Delphi es sencilla. Basta con descargar el paquete desde el sitio web de Python4Delphi y ejecutar el instalador.

Ejecución de código Python

El componente Python Engine permite ejecutar código Python desde Delphi. Para ello, basta con agregar el componente a un formulario y establecer la propiedad Script con el código Python que se desea ejecutar.

Fragmento de código
// Agregar el componente Python Engine al formulario
PythonEngine1 := TPythonEngine.Create(Self);

// Establecer la propiedad Script con el código Python que se desea ejecutar
PythonEngine1.Script := '
print("Hello, world!");
';

// Ejecutar el código Python
PythonEngine1.Run();

Creación de módulos Python

El componente Python Module permite crear módulos Python desde Delphi. Un módulo Python es un archivo que contiene código Python que se puede importar en otros programas Python.

Para crear un módulo Python, basta con agregar el componente Python Module a un formulario y establecer la propiedad ModuleFile con la ruta del archivo Python que se desea crear.

Fragmento de código
// Agregar el componente Python Module al formulario
PythonModule1 := TPythonModule.Create(Self);

// Establecer la propiedad ModuleFile con la ruta del archivo Python que se desea crear
PythonModule1.ModuleFile := 'C:\MyProjects\MyModule.py';

// Agregar código Python al módulo
PythonModule1.Code := '
def main():
  print("Hello, world!");

main();
';

Llamada a bibliotecas Python

El componente Python Module también permite llamar a bibliotecas Python desde Delphi. Para ello, basta con agregar el componente a un formulario y establecer la propiedad ModuleFile con la ruta de la biblioteca Python que se desea llamar.

Fragmento de código
// Agregar el componente Python Module al formulario
PythonModule1 := TPythonModule.Create(Self);

// Establecer la propiedad ModuleFile con la ruta de la biblioteca Python que se desea llamar
PythonModule1.ModuleFile := 'C:\Python36\Lib\site-packages\numpy\core\_multiarray_tests.pyd';

// Llamar a una función de la biblioteca Python
PythonModule1.CallFunction('sin', [1.0]);

Integración bidireccional

Python4Delphi ofrece una integración bidireccional entre Python y Delphi. Esto significa que es posible llamar a código Delphi desde Python y viceversa.

Para llamar a código Delphi desde Python, se puede utilizar el componente Delphi Module. Este componente permite acceder a objetos, interfaces, registros, etc. de Delphi desde Python.

Python
import delphi

# Crear un objeto Delphi
delphi_object = delphi.TForm1()

# Establecer la propiedad Caption del objeto Delphi
delphi_object.Caption = "Hello, world!"

# Mostrar el objeto Delphi
delphi_object.Show()

Para llamar a código Python desde Delphi, se puede utilizar el componente Python Object. Este componente permite crear objetos Python desde Delphi.

Fragmento de código
// Agregar el componente Python Object al formulario
PythonObject1 := TPythonObject.Create(Self);

// Establecer la propiedad Script con el código Python que se desea ejecutar
PythonObject1.Script := '
import math

def main():
  print(math.sin(1.0));

main();
';

// Ejecutar el código Python
PythonObject1.Run();

Conclusión

Python4Delphi es una herramienta poderosa que permite integrar Python en Delphi y Lazarus. Con Python4Delphi, es posible crear aplicaciones que combinen las ventajas de ambos lenguajes de programación.