![Part 1 Replay Featured image | Embarcadero RAD Studio Delphi C++Builder Blogs](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2020/10/Part-1-Replay-Featured-image.png?resize=1140%2C675&ssl=1)
Replay de la partie 1 du Python pour les développeurs Delphi . Assurez-vous de vous inscrire à la partie 2 !
Ordre du jour
- Motivation et synergies
- Introduction à Python
- Introduction à Python pour Delphi
- Démo simple
- TPythonModule
- TPyDelphiWrapper
Quelques liens utiles
- Bibliothèque Python4Delphi
- Bibliothèque SynEdit
- Téléchargement de Python pour Windows
- IDE PyScripter pour Python écrit en Delphi à l’aide de Python4Delphi et SynEdit
- Tutoriel Python: Comment penser comme un informaticien avec Python 3 et PyScripter
[ Replay ]
Exemple de code (sur GitHub )
- SimpleDemo
- ModuleDemo
- WrapDelphiDemo
- Démo31 Utilisation de WrapDelphi pour accéder aux attributs du formulaire Delphi
Assurez-vous de vous inscrire à la partie 2 .
Journal des questions et réponses
Question posée | Réponse donnée |
Ahoy hoy | Nous commençons maintenant! |
Merci pour le webinaire | C’est très excitant. |
Salut à tous ! | |
Combien de participants avons-nous? | Beaucoup! Il y a beaucoup d’intérêt. |
Salut! Je ne peux pas télécharger les sources, elles sont marquées comme des logiciels malveillants par Chrome | C’est malheureux. Chrome vous permet-il de contourner l’avertissement? Ce ne sont que des diapositives et du code source. Aucun exécutable. |
La qualité sonore de la première enceinte est médiocre. | Oui, désolé, heureusement, je ne parle pas trop, je vais le réparer. |
TIOBE – lol | Toujours bon pour rire |
n’a pas pu contourner l’avertissement, mais Firefox a téléchargé les sources comme un charme 😉 | Bon vieux Firefox! Heureux que vous ayez pu les télécharger. |
Est-il possible de l’utiliser sous Linux64? | Oui. Win32, Win64, macOS et Linux 64 sont pris en charge. Plateformes prises en charge |
dans chrome, il s’agit simplement de lui permettre de télécharger, utilisez le bouton déroulant | bon à savoir |
Je ne vois pas les diapositives dans le zip de téléchargement | Ils sont un PDF |
merci pour le lien de téléchargement! | Bienvenue |
pourquoi est-ce que j’obtiens «Désolé, cette partie du webinaire ne peut pas être visualisée sur votre appareil»? | Très étrange. Désolé pour ça. Je ne sais pas pourquoi vous auriez cela. Je ne manquerai pas de vous fournir un lien de rediffusion par e-mail. |
Aucun problème? | Aucun problème de ce côté. |
Salut à tous | Bonjour |
Je n’ai pas encore beaucoup fait avec Python, mais Python est également disponible sur le Windows Store. Une installation / désinstallation en un clic peut être pratique. | Vrai. |
Bon sujet, je suis impressionné | J’apprends aussi beaucoup. |
Si je veux utiliser python dans une application cliente – exe pour Windows (10), dois-je installer python sur la machine cliente? |
Oui. Vous pouvez soit distribuer Python avec votre application, soit leur demander de l’installer. |
Obtenir beaucoup d’erreurs de classe, par exemple TSynEdit n’a pas trouvé de messages d’erreur en essayant d’exécuter les démos. Est-ce que je fais quelque chose de mal? | TSynEdit est disponible dans GetIt, vous devez d’abord l’installer. |
(l’exe est distribué au client) | Incluez simplement Python avec votre EXE |
pourriez-vous s’il vous plaît coller ici les liens s’il vous plaît? | https://github.com/pyscripter/python4delphi |
Cette intégration fonctionnera-t-elle dans une DLL Isapi exécutée sur IIS? | Cela devrait. |
salut, je voudrais poser des questions sur l’application multithread – puis-je initialiser python.dll pour chaque thread delphi et exécuter du code en parallèle? | Cela est couvert dans la partie 2 |
Comment pouvons-nous obtenir des composants SynEdit? Est-ce open source? | Il est Open Source et disponible via le gestionnaire de packages GetIt dans l’EDI ou téléchargez-le ici Synedit |
L’exigence n’est malheureusement pas une option. Quelle distribution Python puis-je inclure dans l’installation de mon application? Quelle est sa taille? Mo, Go? Merci |
Obtenez les 8 Mo |
Les utilisateurs finaux doivent-ils avoir Python installé sur la machine cible? | Soit l’utilisateur final en a besoin, soit vous pouvez distribuer la DLL Python avec votre application. |
Où trouver ce Synedit? Ce n’est pas inclus avec Py4D, n’est-ce pas? |
TSynEdit est dans le gestionnaire de packages GetIt dans l’EDI et disponible ici |
Est-il possible d’exécuter un script python dans un thread? | Oui, mais nous en parlerons plus en détail dans le prochain webinaire. |
Pourriez-vous expliquer comment les composants python sont installés |
Je vais ajouter des étapes d’installation détaillées et plus de détails ici |
Bonjour..JS | |
Merci! | |
La rediffusion sera-t-elle disponible pour cette session s’il vous plaît | Oui, vous recevrez un e-mail avec la rediffusion et je publierai la rediffusion pour les deux moitiés et des ressources supplémentaires ici |
C’est fantastique! | D’accord |
Une façon que j’espère serait disponible pour expédier la dll compilée dans l’exe en tant que ressource, puis l’extraire au moment de l’exécution dans un dossier temporaire ou l’utiliser comme une ressource extraite en mémoire |
En théorie, vous pouvez le faire. |
Dans l’application CAD Rhinoceros, ils utilisent une version courte de phyton appelée iron phyton pour la création de plugins. Est-il possible de mélanger cette courte bibliothèque avec Delphi et de créer un plugin avec Delphi? | Oui |
for, in, import – les mots clés ne sont pas mis en surbrillance | Il y avait un problème avec la mise en évidence de la syntaxe. C’est ce qui se passe avec les démos en direct. |
Avons-nous besoin d’ajouter un chemin vers python dans les options du projet? | Il existe quelques options de redistribution. |
que se passe-t-il si la syntaxe est incorrecte? | Il fournira des commentaires sur les erreurs et vous pouvez gérer cela dans votre programme |
1. allez-vous inclure un lien vers cet exemple simple de démonstration dans le lien? 2. Puis-je également l’utiliser dans C ++ Builder? |
Voici tous les exemples , et la plupart des fonctionnalités devraient fonctionner à partir de C ++ Builder |
Le filetage est-il pris en charge? | Il y a bientôt une démo multithread. |
Bonjour | |
Existe-t-il un moyen de gérer différentes instances de python à partir de l’application Delphi ou s’agit-il d’une application Delphi avec une seule instance python? | Vous pouvez gérer cela à partir du TPythonEngine |
puis-je l’utiliser dans une application Web? | En théorie. Vous avez des problèmes supplémentaires avec les applications Web, vous devez donc faire attention à votre modèle de filetage, mais si vous faites attention, cela devrait fonctionner correctement. |
Quel bon présentateur est-il! | Oui |
Cela fonctionnera-t-il également avec C ++ Builder? | La plupart des fonctionnalités devraient fonctionner avec C ++ Builder. |
hehe, je suppose que Delphi permettrait la création d’interfaces visuelles bien meilleures que tkinter 😉 | Oh ouais, je suis allé explorer les options Python pour créer une interface graphique et elles m’ont rappelé la création d’une interface graphique pré-Delphi. Delphi est fantastique pour ajouter une interface graphique à une application Python. |
comment les exceptions python sont-elles gérées? pyc sont-ils créés lors de l’exécution du script? Si non, alors la deuxième exécution i python est plus rapide que dans delphi |
Le composant intercepte les erreurs et les convertit en exceptions Delphi que vous devez gérer. |
J’ai besoin d’implémenter un écouteur pour Firebase, j’ai pu installer python et une bibliothèque, mais je ne pouvais pas laisser le code python en cours d’exécution | |
Avez-vous comparé ce timing python au code python compilé? | Python compilé serait plus rapide que la démonstration, mais il existe d’autres améliorations de performances via la bibliothèque parallèle. Il existe donc toujours des options pour améliorer les performances. |
J’ai besoin d’implémenter un écouteur pour Firebase, j’ai pu installer python et une bibliothèque, mais je ne pouvais pas laisser le code python en cours d’exécution | |
y a-t-il une limitation des bibliothèques python importées? par exemple pouvons-nous importer opencv, matplotlib, scipy, scikit? | Oui, vous pouvez utiliser tout cela. |
Peut-être ai-je manqué d’informations sur la «taille de distribution requise» qui pourrait être incluse dans l’installation de l’application Delphi par les utilisateurs finaux. | environ 8 Mo |
Est-il possible de passer des variables de Delphi à Python? | Oui |
Les composants SynEdit / TPython__ prennent-ils en charge Delphi Seattle? | Oui. |
Très impressionnant! Si j’ai vu juste, il y a des restrictions sur FreePascal / Lazarus pour le moment concernant la gestion des changements de variantes. | Oui |
C’est exactement mon problème 🙂 les quelques options de redistribution. J’ai besoin de trouver la taille minimale pour l’utilisateur final. |
Utilisez la version intégrable et c’est très petit |
Comment Python sait-il où trouver le delphi_module? | Pour les démos d’aujourd’hui, il le dit, mais dans le prochain webinaire, nous montrerons comment créer des modules à utiliser en dehors de Delphi. |
Puis-je utiliser les interactions avec Python de Delphi 10.3.3? | Oui |
Cela fonctionne aussi avec Berlin? | Oui |
Ce flux « Questions » sera-t-il disponible plus tard? Il y a quelques bons morceaux ici. | Oui, je vais les inclure dans le billet de blog avec la rediffusion |
Puis-je passer un objet delphi à python et appeler des méthodes d’objet en python? | oui, démontrer un enregistrement sous peu, mais peut aussi faire avec Object et Record. |
Incroyable | D’accord |
Il serait intéressant de voir comment vous pouvez créer des DLL en Delphi que vous appelez à partir de Python pur; en dehors de Delphi. | Je crois que cela sera couvert dans la 2ème partie dans 2 semaines. |
?? | 🙂 |
Quand a lieu la prochaine session? | dans deux semaines en même temps. Vous êtes déjà inscrit |
Est-il capable de multithreading? | Oui |
Si je veux distribuer les DLL Python et certaines bibliothèques avec mon application dans un sous-répertoire, comment dire au système dans quel chemin ces bibliothèques se trouvent? | Oui, via TPythonEngine |
Je suis vraiment impressionné par le haut-parleur et la façon dont il peut manipuler l’écran en zoomant et en se repliant sur la page suivante. Comment fait-il ça, s’il vous plaît? | |
Il serait intéressant de voir la sortie de l’objet delphi Ref: print (type (Ref)) print (dir (Ref)) print (help (Ref)) |
ce sont des types Python |
Comparer les délais d’exécution de Python à ceux de Delphi semble vraiment gênant pour les personnes qui ont désespérément besoin de ces bibliothèques tensorFlow, anaconda, panda et autres bibliothèques python. Ai-je vraiment besoin de Delphi? | Delphi facilite la création de l’interface graphique, puis l’appel des bibliothèques Python TensorFlow de lingot, etc., Delphi facilite la création de l’interface graphique, puis l’appel des bibliothèques de lingot TensorFlow Python, etc. |
vraiment sympa et simple à utiliser 🙂 | |
Des trucs vraiment incroyables! | D’accord |
L’enregistrement de cette session sera-t-il librement accessible? | Oui. Je vais les poster |
salut! Cette bibliothèque (Python4Delphi) vous permet-elle de lier et d’utiliser de manière transparente le module et la bibliothèque python? Numpy par exemple? | Oui. Nous aborderons cela plus en détail lors de la prochaine session. |
Pouvez-vous montrer un exemple de fonction Phyton Big Data, comme SVM Support Vector Machine) appelé frm Delphi et renvoyant les résultats à Delphi? | Oui, lors de la prochaine session. |
merci – c’était vraiment intéressant | D’accord |
Super truc !! Merci! | D’accord |
Bonne décision de le diviser en deux sessions! La première partie était très informative, assez rapide et assez lourde🙂 | Oui, nous avons rapidement réalisé que ce serait trop pour une session. Peut finir par faire plus de sessions à l’avenir aussi. |
Merci beaucoup, très intéressant! | |
Great one !, attend avec impatience la prochaine session. Merci à vous tous pour ce grand effort | |
Je comprends que vous pouvez utiliser n’importe quel IDE? comme PyCharm? | Oui |
En distribuant cette DLL, vous pouvez éviter l’installation de Python sur la machine cible, n’est-ce pas? Quelle est la taille réelle de cette DLL Python? | Moins de 8 Mo |
Une petite démo FMX s’il vous plaît. | Nous en aurons un lors de la prochaine session. |
Merci, excellente démo !!!! | |
Delphi + Python + Docker…. ce serait intéressant | Bien sûr, assez facile, bien sûr, assez facile |
il est possible d’utiliser un module python? | Oui |
Jim et Kiriakos: Juste pour clarifier pour le public… «Python4Delphi» n’est _pas_ un compilateur croisé de Python pour Delphi… Au lieu de cela, ce projet est définitivement conçu pour la _ coexistence simultanée de Delphi avec Python_, dans les deux sens… Non ? |
oui, c’est exact. |
Y aura-t-il un exemple d’utilisation de la bibliothèque matplotlib via Delphi dans le deuxième webinaire? | Oui |
Je suis inscrit dans la partie 1, je devrais m’inscrire dans la partie 2 o c’est automatique, pour la session 2 | Déjà enregistré. |
Bonne session! Merci!🙂 | D’accord, bienvenue. |
existe-t-il un document de référence s’il vous plaît? | Il y a de la documentation ici , avec 33 démos, et ce webinaire |
S’il est possible de sélectionner un environnement virtuel particulier créé par conda? | Oui |
Est-il possible de renvoyer d’une fonction Delphi une STRING à la sortie python? | Oui |
Merci, très intéressant. | |
Puis-je accéder à matplotlib? Si oui, comment, dans des fenêtres séparées, ou intégré dans une interface graphique, par exemple dans la VCL | Rejoignez-nous dans 2 semaines |
Très bon truc! | D’accord |
Pourrons-nous revoir ce webinaire plus tard ou le partager avec un collègue? | Oui |
Pouvez-vous passer une liste Python dans Delphi? | bien sûr. |
Super webinaire! Cela m’a ouvert des idées pour intégrer Python et Delphi dans mes projets. Dans l’attente du prochain webinaire. | Oui |
Puis-je accéder à des objets de base de données tels que l’ensemble de données client à partir de python? | Oui |
La dernière fois que j’ai travaillé sur Delphi, c’était en 1995. P4D est une bonne raison pour revenir à Delphi! | Oui |
Merci! | |
bonjour, est-ce que d4p est entièrement multi-plateforme? | oui, mais pas encore de Python sur mobile., oui, mais pas encore de Python sur mobile. |
Puis-je utiliser Sublime Text? | sûr |
Impressionnant! | |
Merci pour le partage / affichage. | |
y a-t-il une documentation de classe ou une référence s’il vous plaît? |
utiliser la source |
Super intro. Dans l’attente des prochaines sessions. Félicitations à Embarcadero pour l’organisation de ce webinaire. | Merci! |
Jim et Kiriakos: Juste pour clarifier pour le public… «Python4Delphi» n’est _pas_ un compilateur croisé de Python pour Delphi… Au lieu de cela, ce projet est définitivement conçu pour la _ coexistence simultanée de Delphi avec Python_, dans les deux sens… Non? | correct |
Très intéressant. (J’ai utilisé PascalScript de RemObjects dans mon application). | |
Bonne session! | |
Existe-t-il une formation sur Python4Delphi? | pas encore, mais j’y travaille. |
ça marche sur OS mobile? Android et IOS? | Python ne fonctionne pas sur mobile. |
quand a lieu le deuxième webinaire? | deux semaines. |
Est-il prévu de publier le Python4Delphi via GetIt Package Manager pour simplifier l’installation? | Oui. |
Puis-je accéder à des objets de base de données tels que l’ensemble de données client à partir de python? | Oui |
Comment delphi peut-il être utilisé à partir de python autrement que le projet / module Delphi compilé en dll? | oui, prochaine session dans deux semaines. |
Génial! Comment puis-je distribuer des packages Python avec Python DLL? | Consultez la documentation Python. |
Combien de participants sont ici, Jim? | Beaucoup. |
A travaillé sur Chrome sur Mac | |
Bon produit! | |
serait-ce le même lien de webinaire pour la partie 2? Ou j’ai besoin de rechercher un nouveau lien? | Oui |
Merci:) | |
la gestion du comptage des références doit-elle être manuelle? les futures versions de la bibliothèque peuvent-elles automatiser cela? | Les options préférées font le comptage automatique des références. |
y a-t-il besoin d’un python.dll lors de l’exécution du fichier exe? | Oui |
Combien ça coûtera? | gratuit / open source |
Est-il possible de transférer des bitmaps, générés par Python, vers Delphi? Je pense aux conversions svg-> bmp, etc. |
En théorie |
Merci de votre réponse! | |
Applaudissements de l’un des spectateurs. Vous faites du bon travail tous les deux! | |
P4D compilera-t-il dans la communauté Delphi? | Oui |
Très cool. Excellent séminaire. Merci d’avoir mis ça. | |
J’ai adoré! Ouvre tant d’opportunités! Merci! | |
Est-il entièrement compatible avec le code RAD Server exécuté sur Linux Ubuntu? | Oui oui |
Super webinaire! Merci! | |
jouent avec ça de temps en temps depuis quelques années. Pouvons-nous avoir un exemple simple de remise d’un tableau à python, de traitement dans numpy et de remise à delphi | oui, travaillera sur cela. |
Cool! Dans l’attente de la prochaine session! Veuillez rester en sécurité et en bonne santé tout le monde. |
Merci |
peut-il fonctionner sur Android et IOS? | pas encore |
Tellement de bonnes choses à couvrir – vous avez besoin d’une partie 3 – les gens en veulent plus 😀 | |
Combien de développeurs contribuent à ce projet? C’est un must pour tout développeur Delphi «de l’ère moderne» !!! ?? | |
excellent travail, merci pour cette session, à la prochaine! | |
Excellent webinaire. Très excitant. Dans l’attente de la partie 2. Excatly ce que nous recherchions. | |
Excellent truc! J’ai vraiment l’intention d’utiliser P4D. Merci et salutations d’Israël | |
est le support de Python4Delphi avec le multidevice (FMX)? | oui, macOS, Linux et Windows. Pas encore de Python sur mobile. |
Au plaisir de le voir dans Get It Package Manager dans un proche avenir. | Travaillera dessus. |
J’utilise python sur AWS. Puis-je y utiliser Delphi Object? | si vous le déployez là-bas, oui. Déployez simplement un module Linux. |
Super démo. J’ai hâte d’en savoir plus. | |
Oui, plus de temps sur les bibliothèques Python s’il vous plaît !!! 🙂 | ça ira |
15 ans d’utilisation de delphi, 10 ans d’utilisation de python… Merci pour votre travail !!! | |
la gestion du comptage des références doit-elle être manuelle? les futures versions de la bibliothèque p4d peuvent-elles automatiser cela? | Lorsque vous utilisez les composants de wrapper de haut niveau, il gère automatiquement le comptage des références. |
Qu’entendez-vous par les fonctions Python accessibles dans le code de bas niveau de Dephi? | Delphi peut appeler directement les fonctions Python. |
Que pouvez-vous dire que quels sont les principaux avantages de l’utilisation de P4D par rapport au développement de projets d’apprentissage automatique python purs? | Utilisez Delphi pour l’interface utilisateur ou d’autres intégrations |
Comment pouvons nous aider; vous aimez Pull Requests? Ou d’abord discuter des propositions? | Quelle que soit votre volonté de vous impliquer, c’est génial! |
J’ai fait beaucoup de choses avec Delphi sur Windows et Linux dans AWS | Ah, super! |
Pensez-vous avoir remplacé Tkinter? dis oui je t’en supplie😉 | C’est certainement un senario d’utilisation. |
Exactement ce que je voulais proposer! | |
Lorsque je compile demo01, il montre qu’une erreur n’a pas pu ouvrir la DLL « python32.dll », je ne trouve pas la DLL dans le code source, comment y remédier? | Vous devez d’abord installer Python et vous assurer que le bitness de Python correspond au bitness de votre application (32 vs 64 bits), vous pouvez installer les deux. |
Après le succès du lancement de la communauté Bold, pourrait-il valoir la peine d’organiser une chaîne Discord? ou y a-t-il déjà similaire? | Certainement quelque chose à regarder. |
Puis-je gérer les erreurs Delphi de Python? | Oui |
si vous avez des composants de haut niveau, pourquoi en auriez-vous besoin? | Les composants de haut niveau utilisent RTTI, donc les composants de bas niveau vous donnent un peu plus de contrôle et vous permettent de supprimer la surcharge RTTI. |
Veuillez énumérer les classes de haut niveau et les classes de bas niveau, je ne sais pas lesquelles. | TPyDelphiWrapper est le composant de haut niveau. |
J’ai besoin de continuer! Merci à tous! À plus tard! | |
Puis-je déboguer le code Python à partir de Delphi? | Vous pouvez; t déboguer le code Python à partir de l’EDI Delphi, mais vous pouvez utiliser PyScripter pour déboguer le code. Votre application Delphi |
Pouvons-nous créer un exemple de module conçu en Delphi et l’installer avec PIP? | |
J’essaie de compiler le paquet pour Delphi 10.4, mais l’unité PythonAction a beaucoup de bogues à cause d’une mauvaise utilisation des chaînes Ansi et Unicode… est-ce en cours? | |
Est-il possible de partager de la mémoire entre Delphi et Python | |
Très intéressant, merci. Dans l’attente du 2e | |
très bonne information, merci beaucoup! à la prochaine | |
L’automatisation des tests Python sera-t-elle couverte la prochaine fois? | |
quand Java chez Delphi? | |
Merci! | |
Merci ! Bon travail ! | |
Merci les gars, très apprécié !!! | |
Merci! | |
Vraiment utile | |
Merci | |
Merci 🙂 | |
Merci beaucoup! | |
Gracias a ustedes. Esperamos ansioso la segunda parte | |
Merci |
Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition