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 :

"python print" ne fonctionne pas


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut "python print" ne fonctionne pas
    Bonjour,

    Je suis codeur C++, et pour que le débogueur gdb affiche correctement les structures de données, cela doit passer par Python (que je ne connais pas).

    J'ai lancé les deux commandes print figurant au début de cette page web :

    me donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    python: can't open file 'print': [Errno 2] No such file or directory
    La version de Python installée sur mon système (CentOS 6.2) est la 2.6.6.

    Je suis perdu. Toute indication sera bienvenue. Merci.

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Je ne connais pas gdb, mais peut-être faut-il avoir déjà lancé gdb pour exécuter cette instruction.

    En tout cas, cette instruction dans une console (sans gdb) donne la même erreur, et c'est normal: ça ne correspond pas à la syntaxe de python lancé en ligne de commande ==> "python --help" donne l'aide.

    Pour exécuter une instruction python en ligne de commande:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    python -c "print 42+2"
    44
    Donc, manifestement, il faut avoir lancé gdb avant. Voir sur le lien cité: "il est maintenant possible d’exécuter du python dans GDB"

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par tyrtamos Voir le message
    Je ne connais pas gdb, mais peut-être faut-il avoir déjà lancé gdb pour exécuter cette instruction.
    JE ne pense pas, car l'invite de gdb est toujours précédée de (gdb), comme on le voit dans la commande ci-dessous, extraite de la page sus-mentionnée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (gdb) python print(' '.join(dir(gdb)))
    Citation Envoyé par tyrtamos Voir le message
    En tout cas, cette instruction dans une console (sans gdb) donne la même erreur, et c'est normal: ça ne correspond pas à la syntaxe de python lancé en ligne de commande ==> "python --help" donne l'aide.
    Cela ne serait-il pas lié à python-dev ?

  4. #4
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par oodini Voir le message
    Cela ne serait-il pas lié à python-dev ?
    Je ne crois pas. python-dev ne contribue pas au fonctionnement normal de python: il ne sert qu'à la compilation d'autres programmes qui utilisent ou complètent python.

    En dehors du contexte de gdb (que je connais pas), la ligne "python print 42 42" NE peut PAS marcher. Il faut donc essayer dans gdb. Ce que suggère la phrase extraite du site cité (dernière ligne de mon précédent message).

  5. #5
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    Bonjour

    sous gdb (Gnu DeBugger), avec l'invite "(gdb)", taper "python ..." c'est vouloir/espérer que python (l'interpréteur) analyse et exécute ce qui suit.

    En dehors de la syntaxe dont Tyrtamos a parlé (je n'y reviens pas), c'est, je pense, pareil que taper le nom d'un exécutable et vouloir qu'il s'exécute et affiche ce qui va sur la sortie standard.

    est-ce que

    "(gdb) ls" fournit les fichiers du répertoire courant ?

    Si ce n'est pas le cas, un "(gdb) python ... qqch ..." ne marchera pas non plus

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par plxpy Voir le message
    "(gdb) ls" fournit les fichiers du répertoire courant ?
    Non...

    Cela dit, cette page semble donner raison à tyrtamos.

    Bien que ce que je tape soit quelque peu différent de ce qui était indiqué sur la page indiquée dans mon premier message :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    (gdb) print 42
    $1 = 42

Discussions similaires

  1. print() ne fonctionne pas sous ie 6
    Par tite_mushu dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/02/2011, 09h28
  2. Fonction Quoted printable qui ne fonctionne pas.
    Par leCcsympas dans le forum C
    Réponses: 3
    Dernier message: 13/01/2007, 18h54

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