IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Python Discussion :

connaitre les lignes python exécutées


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de awalter1
    Inscrit en
    Août 2004
    Messages
    994
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 994
    Par défaut connaitre les lignes python exécutées
    Bonjour,
    Je teste mon application python/gtk sous RHEL 5.8 et avec python 2.7.
    J'ai un pb de comportement entre une situation A et B, alors que cela devrait faire la même chose, de plus l'aspect graphique et temps réel de gtk rends l'utilisation du debugger standard difficile.
    Comment puis je connaitre les lignes python déroulées par mon application : similaire à ce que j'obtiendrais en passant par le debugger python et en faisant step sur chaque ligne exécutée, comme il y a des centaines, voire milliers de lignes exécutées, il ne faut pas que ce soit manuel.
    La finalité est de comparer les lignes exécutées dans le cas A et celles dans le cas B, je pourrais alors voir la différence et en déduire ou le comportement de mon application a dévié.
    Merci

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 715
    Par défaut
    Salut,
    Pour générer une "trace" de l’exécution, vous pouvez commencer avec le module trace.
    (facile hein?). Pour comparer ça sera moins rigolo ;-(
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut, autre solution, le module logging et placer des lignes info aux endroits critiques.

  4. #4
    Membre Expert
    Profil pro
    Développeur en systèmes embarqués retraité
    Inscrit en
    Mars 2006
    Messages
    952
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 952
    Par défaut
    Salut,

    Et comme je viens de l'embarqué je propose une solution professionnelle: Faire du pas à pas. Donc du PyDev sous Eclipse, par exemple. Ce n'est pas un couple réputé pour sa simplicité mais il est très efficace. j'avoue que c'est tellement lourd que je l'utilise le moins possible, préférant un simple éditeur comme scite. Certains bugs m'ont malgré obligé à l'utiliser, et c'est imparable.

    A+

    Pfeuh

  5. #5
    Membre éprouvé Avatar de awalter1
    Inscrit en
    Août 2004
    Messages
    994
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 994
    Par défaut
    Merci beaucoup de me rappeler que le module trace existait (jamais utilisé jusqu'ici).

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur en formation
    Inscrit en
    Juillet 2013
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur en formation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 300
    Par défaut
    Bonjour, je profite de ce topic pour poser une question qui s'en rapproche : existe-t'il une fonction qui permet d'exécuter une ligne de code générée par notre programme sous forme str de la même manière qu'une ligne de code normale?

  7. #7
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Tu veux dire quelque chose comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Type "help", "copyright", "credits" or "license" for more information.
    >>> s = u'import sys\nprint sys.path'
    >>> exec(s)
    ['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client']
    >>>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Appliquer une formule à toutes les lignes d'une colonne sans en connaitre le nombre à l'avance
    Par Chevrefeuille dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 08/04/2010, 14h43
  2. Connaitre les tabulations des lignes d'un fichier
    Par Jane Home dans le forum Langage
    Réponses: 0
    Dernier message: 26/02/2010, 13h32
  3. [AC-2003] connaitre les ligne sélectionnée sur formulaire continu
    Par cbleas dans le forum IHM
    Réponses: 2
    Dernier message: 23/09/2009, 21h54
  4. Réponses: 2
    Dernier message: 30/09/2008, 14h18

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