Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut Affichage d'une variable d'un programme Python

    Bonjour à tous !

    M'étant lancé dans un programme Qt afin de faire une interface graphique pour afficher les données de mon programme python sur raspberry, je cherche à comprendre comment en afficher ses variables...
    Je m'explique: je cherche à afficher la pression et la température à un certain intervalle de temps donné. Ce programme fonctionne déjà dans un programme python que j'ai conçu et affiche ses résultats dans le terminal.
    Néanmoins, j'ai besoin d'avoir ses données sur une interface graphique (i.e. faite avec Qt).
    Le problème est que je n'ai aucune idée de par où commencer... Il y a des forums qui parlent d'afficher des variables mais le code est en C++ => ne m'intéresse pas.
    L'idéal serait d'intégrer mon code python dans le dossier de mon application, d'aller dans l'interface graphique, de créer un texte en lui demandant d'afficher le contenu de telle variable et lui demander de rafraichir sa donnée dans un intervalle de temps x. Est-ce possible selon vous ?

    Merci à tous ceux qui prendront le temps de me répondre !

  2. #2
    Membre éclairé Avatar de viper1094
    Homme Profil pro
    Lycéen
    Inscrit en
    mai 2019
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : mai 2019
    Messages : 562
    Points : 875
    Points
    875

    Par défaut

    https://wiki.python.org/moin/PyQt C'est surement ce qui conviendrait le mieux non ? QT mais en python
    Sinon tkinter, qui est un module présent de base sous Python. Moins poussé que pyQT certes, mais beaucoup plus simple et surtout largement suffisant pour un affichage de variable tout con.
    Parce que passer par qt pour afficher un truc python, c'est un peu étrange, mais en supposant que tu en aies l'absolu nécessité, dans ton programme Python, tu écris cette variable dans un fichier 'Variable.txt' et tu vas chercher cet variable avec Qt, puis tu crées un truc graphique et tu affiches ta variable.

    PS: Utiliser Qt c'est possible qu'en C++ hein , ça va être compliqué si ça t'intéresses pas.
    "C'est d'un ennui…"

    Shikamaru Nara

  3. #3
    Responsable Systèmes


    Homme Profil pro
    Technicien maintenance
    Inscrit en
    août 2011
    Messages
    11 182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : août 2011
    Messages : 11 182
    Points : 25 092
    Points
    25 092

    Par défaut

    Si tu as d'un coté ton appli Python et de l'autre coté ton appli C++/Qt, tu peux demander à Python de stocker ses valeurs dans des variables d'environnement, que le programme Qt récupèrera. Ton appli Python restera autonome et utilisable en ligne de commande, et la modif de celle-ci pour stocker les valeurs dans des variables d’environnement est une modif légère.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur la création d'un système : http://chrtophe.developpez.com/tutoriels/minisysteme/
    Mon article sur le P2V : http://chrtophe.developpez.com/tutoriels/p2v/
    Consultez nos FAQ : Windows, Linux, Virtualisation

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut

    Merci pour toutes vos réponses !

    Citation Envoyé par viper1094 Voir le message
    https://wiki.python.org/moin/PyQt C'est surement ce qui conviendrait le mieux non ? QT mais en python
    Sinon tkinter, qui est un module présent de base sous Python. Moins poussé que pyQT certes, mais beaucoup plus simple et surtout largement suffisant pour un affichage de variable tout con.
    Parce que passer par qt pour afficher un truc python, c'est un peu étrange, mais en supposant que tu en aies l'absolu nécessité, dans ton programme Python, tu écris cette variable dans un fichier 'Variable.txt' et tu vas chercher cet variable avec Qt, puis tu crées un truc graphique et tu affiches ta variable.

    PS: Utiliser Qt c'est possible qu'en C++ hein , ça va être compliqué si ça t'intéresses pas.
    Alors ça pourrait être pas mal mais le problème est que les variables vont changer plusieurs fois par secondes... :/
    Et pour tkinter, le problème est que les interfaces sont pas hyper jolies et étant sur raspberry j'aurais voulu faire de belles applis ! (après on peut passer en langages web mais le raspberry n'est pas du tout optimisé pour chromium je trouve...)
    Et j'ai pu voir que faire des interfaces graphiques sur raspberry c'est en fait compliqué, tout le monde propose des trucs mais rien ne semble vraiment sortir du lot comme LA solution :/

    Si tu as d'un coté ton appli Python et de l'autre ton apppli C++/Qt, tu peux demander à Python de stocker ses valeurs dans des variables d'environnement, que le programme Qt récupèrera. Ton appli Python restera autonome et utilisable en ligne de commande, et la modif de celle-ci pour stocker les valeurs dans des variables d’environnement est une modif légère.
    Ça ça pourrait peut-être marcher, à voir... Mais il est vrai que je n'avais pas vraiment vu QT comme ça... Je pensais que c'était beaucoup plus simple pour créer une interface graphique pour un programme... C'est quand même hallucinant de voir le problème que ça pose pour créer un simple programme graphique sur raspberry quand même...

  5. #5
    Responsable Systèmes


    Homme Profil pro
    Technicien maintenance
    Inscrit en
    août 2011
    Messages
    11 182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : août 2011
    Messages : 11 182
    Points : 25 092
    Points
    25 092

    Par défaut

    Ma solution n'est à mon avis pas la seule. Tu dois pouvoir aussi faire une intégration plus profonde avec Qt. Pour cela, attends le retour de spécialistes Qt.

    C'est quand même hallucinant de voir le problème que ça pose pour créer un simple programme graphique sur raspberry quand même...
    Tu devrais pouvoir aussi assez facilement faire une interface Web sur le Raspberry qui utilise les données de ton appli.

    Regardes ceci.

    Des données sont récupérés depuis des outils et transforme celles-ci en affichage web graphique.

    Tu devrais pouvoirutiliser les mêmes outils avec ton appli Python en récupérant les valeurs qu'elle retourne.Tu devrais aussi pouvoir réaliser ce travail directement depuis Python, avec Qt, ou autre chose.

    Tu n'es limité que par tes compétences en programmation, mais ne le prend pas mal car des compétences ça s'acquiert, et le problème est contournable en utilisant des outils tout fait.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur la création d'un système : http://chrtophe.developpez.com/tutoriels/minisysteme/
    Mon article sur le P2V : http://chrtophe.developpez.com/tutoriels/p2v/
    Consultez nos FAQ : Windows, Linux, Virtualisation

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut

    C'est justement ce que je voulais faire au début (interface web), mais chromium n'est pas assez optimisé à mon gout malheureusement...

    Pour ce qui est du lien que tu m'as donné pourquoi pas, à voir, il faut que je m'y penche un peu plus en détail.

    Oui tout à fait, et acquérir ces compétences prend sûrement plus de temps que la conception en elle-même une fois ces dernières acquéries ! Merci tout de même pour ton aide.

  7. #7
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    août 2008
    Messages
    24 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 24 593
    Points : 164 268
    Points
    164 268

    Par défaut



    Pour faire transiter des informations plusieurs fois par seconde, le mieux est probablement de directement coder ton interface avec PyQt (https://riverbankcomputing.com/software/pyqt/intro) ou PySide (https://pypi.org/project/PySide2/). Les deux se ressemblent énormément, la différence principale est la licence (GPL pour PyQt, LGPL pour PySide).
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions), HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

Discussions similaires

  1. Réponses: 7
    Dernier message: 28/10/2006, 19h07
  2. Réponses: 11
    Dernier message: 16/10/2006, 14h05
  3. Réponses: 10
    Dernier message: 12/07/2006, 11h42
  4. [Dates] Affichage d'une variable
    Par claudesou dans le forum Fonctions
    Réponses: 3
    Dernier message: 29/05/2006, 10h08
  5. Réponses: 4
    Dernier message: 14/12/2005, 08h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo