Reproducción de la parte 1 de Python para desarrolladores de Delphi. ¡Asegúrese de registrarse para la Parte 2!
Agenda
- Motivación y sinergias
- Introducción a Python
- Introducción a Python para Delphi
- Demo simple
- TPythonModule
- TPyDelphiWrapper
Algunos enlaces útiles
- Biblioteca Python4Delphi
- Biblioteca SynEdit
- Descarga de Python para Windows
- PyScripter IDE para Python escrito en Delphi usando Python4Delphi y SynEdit
- Tutorial de Python: cómo pensar como un informático con Python 3 y PyScripter
Código de muestra (en GitHub)
- SimpleDemo
- ModuleDemo
- WrapDelphiDemo
- Demo31 Uso de WrapDelphi para acceder a los atributos de Delphi Form
Asegúrese de registrarse para la parte 2.
Registro de preguntas y respuestas
| Pregunta formulada | Respuesta dada | 
| Ahoy hoy | ¡Empezamos ahora! | 
| Gracias por el webinar | Es muy emocionante. | 
| Hola a todos ! | |
| ¿Cuántos participantes tenemos? | ¡Mucho! Hay mucho interés. | 
| ¡Hola! No puedo descargar las fuentes, están etiquetadas como malware por Chrome | Eso es desafortunado. ¿Chrome te da la capacidad de omitir la advertencia? Son solo diapositivas y código fuente. Sin ejecutables. | 
| La calidad de sonido del primer altavoz es mala. | Sí, lo siento, afortunadamente no hablo demasiado, aunque lo arreglaré. | 
| TIOBE – lol | Siempre es bueno para una risa | 
| no pudo evitar la advertencia, pero Firefox descargó las fuentes como un encanto 😉 | ¡Buen viejo Firefox! Me alegro de que hayas podido descargarlos. | 
| ¿Es posible usarlo en Linux64? | si. Se admiten Win32, Win64, macOS y Linux 64. Plataformas soportadas | 
| en Chrome es simplemente para permitir que se descargue, use el botón desplegable | bueno saber | 
| No veo las diapositivas en el zip de descarga | Son un PDF | 
| gracias por el enlace de descarga! | Bienvenido | 
| ¿Por qué aparece el mensaje “Lo siento, esta parte del seminario web no se puede ver en su dispositivo”? | Muy raro. Lo siento por eso. No estoy seguro de por qué obtendrías eso. Me aseguraré de conseguirle un enlace de reproducción por correo electrónico. | 
| ¿Algún problema? | No hay problemas en este extremo. | 
| Hola a todos | Hola | 
| Todavía no he hecho mucho con Python, pero Python también está disponible en la Tienda Windows. La instalación / desinstalación con un clic puede ser útil. | Cierto. | 
| Buen tema, estoy impresionado | También estoy aprendiendo mucho. | 
| Si quiero usar Python en una aplicación cliente, exe para Windows (10) , ¿necesito tener Python instalado en la máquina cliente? | Si. Puede distribuir Python con su aplicación o pedirles que lo instalen. | 
| Recibiendo muchos errores de clase, por ejemplo, TSynEdit no encuentra mensajes de error al intentar ejecutar las demostraciones. ¿Estoy haciendo algo mal? | TSynEdit está disponible en GetIt, primero debes instalarlo. | 
| (el exe se distribuye al cliente) | Solo incluye Python con tu EXE | 
| ¿Podrías pegar aquí los enlaces? | https://github.com/pyscripter/python4delphi | 
| ¿Esta integración funcionará en una Dll de Isapi que se ejecute en IIS? | Debería. | 
| hola, me gustaría preguntar acerca de la aplicación multiproceso: ¿puedo inicializar python.dll para cada subproceso delphi y ejecutar código en paralelo? | Eso está cubierto en la parte 2 | 
| ¿Cómo podemos obtener componentes SynEdit? ¿Es de código abierto? | Es de código abierto y está disponible a través del administrador de paquetes GetIt en el IDE o descárguelo aquí Synedit | 
| Desafortunadamente, el requisito no es una opción. ¿Qué distribución de Python puedo incluir en la instalación de mi aplicación? Cual es su tamaño MB, GB? Gracias | Obtén los 8 MB | 
| ¿Los usuarios finales necesitan tener Python instalado en la máquina de destino? | El usuario final lo necesita preinstalado o puede distribuir la DLL de Python con su aplicación. | 
| ¿Dónde conseguir ese Synedit? No está incluido con Py4D, ¿verdad? | TSynEdit está en el administrador de paquetes GetIt en el IDE y está disponible aquí | 
| ¿Es posible ejecutar un script de Python dentro de un hilo? | Sí, pero lo cubriremos con más detalles en el próximo seminario web. | 
| ¿Podría explicar cómo se instalan los componentes de Python? | Agregaré pasos de instalación detallados y más detalles aquí | 
| Buenos dias..JS | |
| ¡Gracias! | |
| ¿La repetición estará disponible para esta sesión? | Sí, recibirás un correo electrónico con la repetición y publicaré la repetición para ambas mitades y recursos adicionales aquí. | 
| ¡Es fantástico! | convenido | 
| Espero que una forma esté disponible para enviar el dll compilado dentro del exe como un recurso y luego extraerlo en tiempo de ejecución a alguna carpeta temporal o usarlo como un recurso extraído en memoria | En teoría, podrías hacer eso. | 
| En la aplicación CAD Rhinoceros, utilizan una versión corta de phyton llamada iron phyton para la creación de complementos. ¿Es posible mezclar esta pequeña biblioteca con Delphi y crear un complemento con Delphi? | si | 
| para, en, importar: las palabras clave no están resaltadas | Había algo mal con el resaltado de sintaxis allí. Eso es lo que sucede con Live Demos. | 
| ¿Necesitamos agregar una ruta a Python en las opciones del proyecto? | Hay algunas opciones de redistribución. | 
| ¿Qué pasa si la sintaxis es incorrecta? | Proporcionará comentarios sobre los errores y puede manejarlos en su programa | 
| 1. ¿Incluirá un enlace a este sencillo ejemplo de demostración en el enlace? 2. ¿Puedo usar esto también en C ++ Builder? | Aquí están todos los ejemplos , y la mayor parte de la funcionalidad debería funcionar desde C ++ Builder | 
| ¿Es compatible con Threading? | En breve habrá una demostración multiproceso. | 
| Hola | |
| ¿Hay alguna forma de administrar diferentes instancias de python desde la aplicación delphi o es una aplicación delphi con solo una instancia de python? | Puedes gestionar eso desde TPythonEngine | 
| ¿Puedo usarlo en una aplicación web? | En teoria. Tiene algunas preocupaciones adicionales con las aplicaciones web, por lo que debería tener cuidado con su modelo de subprocesos, pero si tiene cuidado, entonces debería funcionar bien. | 
| ¡Qué buen presentador es! | si | 
| ¿Funcionará esto también con C ++ Builder? | La mayor parte de la funcionalidad debería funcionar con C ++ Builder. | 
| jeje, supongo que Delphi permitiría la creación de interfaces visuales mucho mejores que tkinter 😉 | Ah, sí, fui y exploré las opciones de Python para crear GUI y me recordaron la creación de GUI previa a Delphi. Delphi es fantástico para agregar GUI a una aplicación Python. | 
| ¿Cómo se manejan las excepciones de Python? ¿Se crean pyc cuando se ejecuta el script? Si no, entonces la segunda ejecución i python es más rápida que en delphi | El componente captura los errores y los convierte en excepciones de Delphi para que usted los maneje. | 
| Necesito implementar un Listener para Firebase, pude instalar Python y la biblioteca, pero no pude dejar el código de Python ejecutándose | |
| ¿Ha comparado ese tiempo de Python con el código de Python compilado? | Python compilado sería más rápido que la demostración, pero hay otras mejoras de rendimiento a través de la biblioteca paralela. Por tanto, siempre hay opciones para mejorar el rendimiento. | 
| Necesito implementar un Listener para Firebase, pude instalar Python y la biblioteca, pero no pude dejar el código de Python ejecutándose | |
| ¿Existe una limitación de las librerías de Python importadas? por ejemplo, ¿podemos importar opencv, matplotlib, scipy, scikit? | Sí, puedes usar todos esos. | 
| Tal vez me perdí la información sobre el “tamaño de distribución requerido” que podría incluirse en la instalación de la aplicación delphi de los usuarios finales. | alrededor de 8 MB | 
| ¿Es posible pasar variables de Delphi a Python? | si | 
| ¿Los componentes SynEdit / TPython__ son compatibles con Delphi Seattle? | si. | 
| ¡Muy impresionante! Si he visto bien, hay algunas restricciones en FreePascal / Lazarus en este momento sobre el manejo de cambios de variantes. | si | 
| Exactamente ese es mi problema, 🙂 las pocas opciones de redistribución. Necesito encontrar el tamaño mínimo para el usuario final. | Usa la versión incrustable y es muy pequeña | 
| ¿Cómo sabe Python dónde obtener el delphi_module? | Para las demostraciones de hoy lo dice, pero en el próximo webinar mostraremos cómo crear módulos para usar fuera de Delphi. | 
| ¿Puedo usar interacciones con Python desde Delphi 10.3.3? | si | 
| ¿Funciona también con Berlín? | si | 
| ¿Estará disponible este feed de “Preguntas” más adelante? Hay algunas cosas buenas aquí. | Sí, los incluiré en la publicación del blog con la repetición. | 
| ¿Puedo pasar el objeto Delphi a Python y llamar a los métodos del objeto en Python? | sí, demostrando un Registro en breve, pero también puede hacerlo con Objeto y Registro. | 
| Asombroso | Convenido | 
| Sería interesante ver cómo se pueden construir DLL en Delphi que se llaman desde Python puro; fuera de Delphi. | Creo que se tratará en la segunda parte en 2 semanas. | 
| ?? | 🙂 | 
| ¿Cuándo es la próxima sesión? | en dos semanas al mismo tiempo. Ya estás registrado | 
| ¿Es capaz de subprocesos múltiples? | si | 
| Si quiero distribuir las DLL de Python y algunas bibliotecas junto con mi aplicación en algún subdirectorio, ¿cómo le digo al sistema en qué ruta se encuentran estas bibliotecas? | Sí, a través de TPythonEngine | 
| Estoy realmente impresionado con el orador y la forma en que puede manipular la pantalla haciendo zoom y plegando en la página siguiente. ¿Cómo lo hace, por favor? | |
| Sería interesante ver el resultado del objeto delphi Ref: print (type (Ref)) print (dir (Ref)) print (help (Ref)) | son tipos de Python | 
| Comparar python con los tiempos de ejecución de Delphi parece realmente incómodo para las personas que necesitan desparetaly esas bibliotecas de tensorFlow, anaconda, panda y cualquier otra biblioteca de Python. ¿Realmente necesito Delphi? | Delphi facilita la construcción de la GUI y luego llamar a las bibliotecas lingote TensorFlow Python, etc., Delphi facilita la construcción de la GUI y luego llamar a las bibliotecas lingote TensorFlow Python, etc. | 
| realmente agradable y fácil de usar 🙂 | |
| ¡Cosas realmente asombrosas! | convenido | 
| ¿La grabación de esta sesión será de libre acceso? | Si. Los publicare | 
| ¡Hola! ¿Esta biblioteca (Python4Delphi) le permite vincular y usar el módulo y la biblioteca de Python sin problemas? ¿Numpy por ejemplo? | si. Cubriremos eso con más detalles en la próxima sesión. | 
| ¿Puede mostrar un ejemplo de función Phyton Big Data, como SVM Support Vector Machine) que se llama frm Delphi y devuelve resultados a Delphi? | Sí, en la próxima sesión. | 
| gracias – eso fue realmente interesante | convenido | 
| ¡¡Buena cosa!! ¡Gracias! | convenido | 
| ¡Decisión acertada de dividirlo en dos sesiones! La primera parte fue muy informativa, rápida y lo suficientemente pesada.🙂 | Sí, rápidamente nos dimos cuenta de que esto iba a ser demasiado para una sola sesión. También puede terminar haciendo más sesiones en el futuro. | 
| ¡Muchas gracias, muy interesante! | |
| ¡Genial! Esperamos ansiosamente la próxima sesión. Gracias a todos por este gran esfuerzo | |
| Entiendo que puede usar cualquier IDE. como PyCharm? | si | 
| Al distribuir esta DLL, puede evitar la instalación de Python en la máquina de destino, ¿verdad? ¿Qué tan grande es realmente esta DLL de Python? | Menos de 8 MB | 
| Una pequeña demostración de FMX, por favor. | Tendremos uno en la próxima sesión. | 
| Gracias, excelente demo !!!! | |
| Delphi + Python + Docker…. Eso puede ser interesante | Seguro, bastante fácil, seguro, bastante fácil | 
| ¿Es posible usar un módulo de Python? | si | 
| Jim y Kiriakos: Solo para aclarar a la audiencia… “Python4Delphi” _no_ es un compilador cruzado de Python para Delphi… En cambio, este proyecto está definitivamente diseñado para la _ coexistencia simultánea de Delphi con Python_, en cualquier dirección … ¿ Verdad ? | sí, eso es exacto. | 
| ¿Habrá un ejemplo del uso de matplotlib lib a través de Delphi en el segundo seminario web? | si | 
| Estoy registrado en la parte 1, debo registrarme en la parte 2 o esto es automático, para la sesión 2 | Ya registrado. | 
| ¡Buena sesión! ¡Gracias!🙂 | De acuerdo, bienvenido. | 
| hay un documento de referencia por favor? | Hay algo de documentación aquí , con 33 demostraciones, y este seminario web | 
| Si es posible seleccionar un entorno virtual particular creado por conda? | si | 
| ¿Es posible regresar de una función delphi a STRING a la salida de Python? | si | 
| Gracias, muy interesante. | |
| ¿Puedo acceder a matplotlib? Si es así, ¿cómo, en ventanas separadas o incrustado en una GUI, por ejemplo, dentro de VCL? | Únase a nosotros en 2 semanas | 
| ¡Muy buenas cosas! | convenido | 
| ¿Podremos volver a ver este seminario web más tarde o compartirlo con un colega? | si | 
| ¿Puede pasar una lista de Python a Delphi? | por supuesto. | 
| ¡Gran seminario web! Abrió de ideas para integrar Python y Delphi en mis proyectos. Esperamos el próximo seminario web. | si | 
| ¿Puedo acceder a objetos de base de datos como el clientdataset de Python? | si | 
| La última vez que trabajé en Delphi fue en 1995. ¡P4D es una buena razón para volver a Delphi! | si | 
| ¡Gracias! | |
| hola, ¿es d4p completamente multiplataforma? | sí, pero aún no Python en dispositivos móviles., sí, pero no Python en dispositivos móviles todavía. | 
| ¿Puedo usar Sublime Text? | Por supuesto | 
| ¡Increíble! | |
| Gracias por compartir / mostrar. | |
| ¿Hay alguna documentación de clase o referencia por favor? | usa la fuente | 
| Intro impresionante. Esperando las próximas sesiones. Felicitaciones a Embarcadero por organizar este seminario web. | ¡Gracias! | 
| Jim y Kiriakos: Solo para aclarar a la audiencia… “Python4Delphi” _no_ es un compilador cruzado de Python para Delphi… En cambio, este proyecto está definitivamente diseñado para la _ coexistencia simultánea de Delphi con Python_, en cualquier dirección … ¿Verdad? | correcto | 
| Muy interesante. (Usé PascalScript de RemObjects en mi aplicación). | |
| ¡Buena Sesión! | |
| ¿Hay algún entrenamiento disponible sobre Python4Delphi? | todavía no, pero estoy trabajando en ello. | 
| ¿Funciona en sistemas operativos móviles? Android e IOS? | Python no funciona en dispositivos móviles. | 
| ¿Cuándo es el segundo seminario web? | dos semanas. | 
| ¿Está previsto publicar Python4Delphi a través de GetIt Package Manager para simplificar la instalación? | Si. | 
| ¿Puedo acceder a objetos de base de datos como el clientdataset de Python? | si | 
| ¿Cómo se puede usar delphi desde python de otra manera que el proyecto / módulo delphi compilado en dll? | sí, próxima sesión en dos semanas. | 
| ¡Excelente! ¿Cómo puedo distribuir paquetes de Python con Python dll? | Consulte los documentos de Python. | 
| ¿Cuántos asistentes hay aquí, Jim? | Mucho. | 
| Trabajó en Chrome en mac | |
| ¡Buen material! | |
| ¿Sería el mismo enlace de seminario web para la parte 2? ¿O necesito buscar un nuevo enlace? | si | 
| Gracias:) | |
| ¿La gestión del recuento de referencias tiene que ser manual? ¿Pueden las futuras versiones de la biblioteca automatizar esto? | Las opciones preferidas realizan el recuento automático de referencias. | 
| ¿Se necesita un python.dll cuando se ejecuta un archivo exe? | si | 
| ¿Cuanto costara? | libre / código abierto | 
| ¿Es posible transferir mapas de bits, generados por Python, de nuevo a Delphi? Estoy pensando en conversiones svg-> bmp, etc. | En teoria | 
| ¡Gracias por su respuesta! | |
| Aplausos de uno de los asistentes. ¡Ambos están haciendo un buen trabajo! | |
| ¿Se compilará P4D en la comunidad Delphi? | si | 
| Muy genial. Excelente seminario. Gracias por ponértelo. | |
| ¡Me encantó! ¡Abre tantas oportunidades! ¡Gracias! | |
| ¿Es totalmente compatible con el código del servidor RAD que se ejecuta en Linux Ubuntu? | sí Sí | 
| ¡Gran seminario web! ¡Gracias! | |
| He estado jugando con esto de forma intermitente durante algunos años. ¿Podemos tener un ejemplo simple de entregar una matriz a Python, procesar en numpy y devolver a Delphi? | sí, trabajará en eso. | 
| ¡Frio! ¡Esperamos la próxima sesión! Por favor, manténganse seguros y sanos a todos. | Gracias | 
| ¿Puede ejecutarse en Android e IOS? | aún no | 
| Tantas cosas geniales para cubrir, necesitas una parte 3, la gente quiere más 😀 | |
| ¿Cuántos desarrolladores están contribuyendo a este proyecto? ¡¡¡Esto es imprescindible para cualquier desarrollador de Delphi de la “era moderna” !!! ?? | |
| gran trabajo, gracias por esta sesión, ¡nos vemos en la próxima! | |
| Excelente seminario web. Muy emocionante. Esperando la parte 2. Excamente lo que estábamos buscando. | |
| ¡Excelente material! Definitivamente tengo la intención de usar P4D. Gracias y saludos desde Israel | |
| ¿Es compatible Python4Delphi con varios dispositivos (FMX)? | sí, macOS, Linux y Windows. Aún no hay Python en dispositivos móviles. | 
| Esperamos verlo en Get It Package Manager en un futuro próximo. | Trabajará en eso. | 
| Utilizo python en AWS. ¿Puedo usar Delphi Object allí? | si lo implementa allí, entonces sí. Simplemente implemente un módulo de Linux. | 
| Demostración impresionante. Tengo ganas de aprender más. | |
| Sí, ¡más tiempo en las bibliotecas de Python, por favor! 🙂 | haré | 
| 15 años de uso de Delphi, 10 años de uso de Python… ¡¡¡Gracias por tu trabajo !!! | |
| ¿La gestión del recuento de referencias tiene que ser manual? ¿Pueden las futuras versiones de la biblioteca p4d automatizar esto? | Cuando utiliza los componentes de envoltura de alto nivel, maneja el conteo de referencias automático. | 
| ¿Qué quiere decir con el acceso a las funciones de Python en código de bajo nivel desde Dephi? | Delphi puede llamar a las funciones de Python directamente. | 
| ¿Qué puedes decir sobre las principales ventajas de usar P4D frente al desarrollo de proyectos de aprendizaje automático de Python puro? | Utilice Delphi para UI u otras integraciones | 
| Cómo podemos ayudar; ¿te gusta Pull Requests? ¿O primero discutir propuestas? | ¡Cómo quiera participar es genial! | 
| He hecho muchas cosas con Delphi en Windows y Linux en AWS | ¡Ah, genial! | 
| ¿Crees que reemplazaste a Tkinter? porfavor di que si😉 | Ese es ciertamente un senario de uso. | 
| ¡Exactamente lo que quería proponer! | |
| Cuando compilo demo01, se muestra un error que no pudo abrir la DLL “python32.dll”, no puedo encontrar la DLL en el código fuente, ¿cómo solucionarlo? | Primero debe instalar Python y asegurarse de que el bitness de Python coincida con el bitness de su aplicación (32 vs 64 bit). Puede instalar ambos. | 
| Después del éxito del lanzamiento de la comunidad Bold, ¿podría valer la pena organizar un canal de Discord? o hay algo similar ya? | Ciertamente, algo para mirar. | 
| ¿Puedo manejar errores de Delphi desde Python? | si | 
| si tiene componentes de alto nivel, ¿por qué necesitaría componentes de bajo nivel? | Los componentes de alto nivel usan RTTI, por lo que los componentes de bajo nivel le brindan un poco más de control y le permiten eliminar la sobrecarga de RTTI. | 
| Por favor enumere las clases de alto nivel y las clases de bajo nivel, no estoy seguro de cuáles son cuáles. | TPyDelphiWrapper es el componente de alto nivel. | 
| ¡Necesito continuar! ¡Gracias amigos! ¡Nos vemos más tarde! | |
| ¿Puedo depurar código Python desde Delphi? | No puede depurar el código Python desde el IDE de Delphi, pero puede usar PyScripter para depurar el código. Su aplicación Delphi | 
| ¿Podemos crear un módulo de muestra diseñado en Delphi e instalarlo con PIP? | |
| Estoy tratando de compilar el paquete para Delphi 10.4, pero la unidad PythonAction tiene muchos errores debido al uso incorrecto de cadenas Ansi y Unicode … ¿está en progreso? | |
| ¿Es posible compartir memoria entre Delphi y Python? | |
| Muy interesante, gracias. Esperando el segundo | |
| realmente buena información, muchas gracias! hasta la próxima | |
| ¿Se cubrirá la automatización de pruebas de Python la próxima vez? | |
| cuando Java en Delphi? | |
| ¡Gracias! | |
| Gracias ! Gran trabajo ! | |
| Gracias chicos, muy apreciado !!! | |
| ¡Gracias! | |
| Realmente util | |
| gracias | |
| Gracias 🙂 | |
| ¡Muchas gracias! | |
| Gracias a ustedes. Esperamos ansioso la segunda parte | |
| Gracias | 

