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 :

cannot concatenate 'str' and 'gaierror' objects


Sujet :

Python

  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut cannot concatenate 'str' and 'gaierror' objects
    Bonjour,
    Pour ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		try:
    			connection().cwd(dirhilaire+'/c2s')
    		except ftp.all_errors, err:
    			logger.critical('Erreur de changement de répertoire : %s', err)
    			error.append('Erreur de changement de répertoire : '+err)
    			e += 1
    		else:
    ...
    J'ai le message suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Traceback (most recent call last):
      File "exportedi.py", line 132, in <module>
        main()
      File "exportedi.py", line 128, in main
        listFile()
      File "exportedi.py", line 84, in listFile
        error.append('Erreur de connexion à '+host+' : '+test)
    TypeError: cannot concatenate 'str' and 'gaierror' objects
    Je vois pas trop pourquoi ?

    Merci d'avance.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 159
    Par défaut
    Salut,
    1/ ça ne plante pas dans le code que tu nous montre, mais à un autre endroit que tu ne nous montre pas.
    2/ le message d'erreur nous dit que le code qui plante essaie de concaténer un chaîne de caractère avec un objet `gaierror`, qui n'est objectivement pas une chaîne de caractère.
    Il faut donc avant concaténation le convertir en chaîne, grâce à la fonction str() ou au formatage de chaîne (après avoir si besoin redéfini la méthode __str__ de la classe de l'objet en question)

  3. #3
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut
    Merci pour ta réponse. Ça marche nickel, je mets le code au cas ou pour d'autres :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	except ftp.all_errors, err:
    		logger.critical('Erreur de connexion à %s : %s', host, err)
    		error.append('Erreur de connexion à '+host+' : '+str(err))
    		e += 1
    1/ ça ne plante pas dans le code que tu nous montre, mais à un autre endroit que tu ne nous montre pas.
    Chez moi la ligne 84 correspond à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error.append('Erreur de changement de répertoire : '+err)
    La ligne 128 n'apportera rien et la 132 n'existe pas (?) mais je veux bien les mettre quand même.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def main():
    	print 'Transfert de fichiers'
    	listFile() --> 128
    	quit()
     
    if __name__ == '__main__':
        main()

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/10/2014, 15h44
  2. Réponses: 2
    Dernier message: 19/04/2011, 08h56
  3. Réponses: 2
    Dernier message: 14/02/2011, 10h59
  4. Prob Adding and Deleting objects
    Par andy38 dans le forum Accès aux données
    Réponses: 0
    Dernier message: 14/01/2009, 21h35
  5. Concatener une variable a un object?
    Par critok dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/02/2006, 19h38

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