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 :

Comment corriger l'erreur "IndentationError" dans mon Script que j'essaie de modifier pour le faire marcher ?


Sujet :

Python

  1. #1
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 453
    Par défaut Comment corriger l'erreur "IndentationError" dans mon Script que j'essaie de modifier pour le faire marcher ?
    Bonjour.
    Je voudrais ajouter une nouvelle fonctionnalité à un Script dont le Code initial des commandes (-t, -d, -o, -s, -p, -c, -k, --version) est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
        # Script argument parsing
        parser = argparse.ArgumentParser(description='A script ....')
        parser.add_argument('-t', action='store', dest='type',
                            help='lookup type ({}|{}|{})'
                            .format(Abe.STRING_TYPE, Insight.STRING_TYPE, BlockExplorerCom.STRING_TYPE), required=True)
        parser.add_argument('-d', action='store', dest='dict_file',
                            help='Dictionary file (e.g. dictionary.txt)', required=True)
        parser.add_argument('-o', action='store', dest='output_file',
                            help='Output file (e.g. output.txt)', required=True)
        parser.add_argument('-s', action='store', dest='server',
                            help='Abe server address (e.g. localhost)')
        parser.add_argument('-p', action='store', dest='port',
                            help='Abe port (e.g. 2751)')
        parser.add_argument('-c', action='store', dest='chain',
                            help='Abe chain string (e.g. Bitcoin)')
        parser.add_argument('-k', action='store_true', dest='is_private_key', default=False,
                            help='treat each word as a hex or wif encoded private key, not as brain wallet')
    	parser.add_argument('--version', action='version', version='%(prog)s 1.1')
        args = parser.parse_args()

    Alors, moi j'ai décidé d'ajouter une nouvelle commande -a de sorte à ce qu'elle soit l'inverse de la commande -k soit "is_public_key"

    Mais quand j'exécute le script avec la commande -h qui permet d'avoir les informations sur toutes les autres commandes y comprise
    la nouvelle commande -a après avoir ajouter le Code du nouvel argument -a :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	parser.add_argument('-a', action='store_true', dest='is_public_key', default=False,
                            help='Found Private Key throught a Public Address')
    ,je reçois l'erreur (IndentationError) suivante:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Microsoft Windows [version 10.0.14393]
    (c) 2016 Microsoft Corporation. Tous droits réservés.
     
    C:\Users\hp15>"C:\Users\hp15\Desktop\CHEGBK\script.py" -h
      File "C:\Users\hp15\Desktop\CHEGBK\script.py", line 28
        parser.add_argument('-a', action='store_true', dest='is_public_key', default=False,
        ^
    IndentationError: unexpected indent
     
    C:\Users\hp15>
    1- Comment donc remédier à cette erreur ???

    2- Comment dans en second lieu, établir une condition au Code ci-après pour qu'il prenne en compte la dest='is_public_key' de la nouvelle fonctionnalité -a ???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     # Create wallet
            try:
                wallet = Wallet(dictionary_word, args.is_private_key)
            except Exception as e:
                continue
    Dois-je faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     # Create wallet
            try:
    	     if wallet = Wallet(dictionary_word, args.is_private_key) && wallet = Wallet(dictionary_word, args.is_public_key)
            except Exception as e:
                continue

    ????

    Merci d'avance de m'éclaircir svp.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    Bonjour
    Pour corriger une erreur ""IndentationError", il suffit d'indenter son code correctement
    En plus, l'erreur vous indique à quelle ligne il y a un problème (bon ok, en réalité, c'est à la ligne juste en dessous)

  3. #3
    Membre émérite

    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    662
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Août 2010
    Messages : 662
    Par défaut
    Salut,

    Pour l'indentation le problème vient du mélange entre espaces et tabulations. Le code originel est indenté avec 4 espaces, et la lignes que vous avez rajoutée est indentée avec une tabulation. Votre éditeur ne vous le montre pas. La bonne pratique est quatre espaces. La plupart des éditeurs permettent de choisir le comportement de la touche tab pour éviter de faire ces espaces à la main.

    J

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 453
    Par défaut
    Ok merci à tous. C'est réglé. Encore merci

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/10/2017, 21h54
  2. Réponses: 8
    Dernier message: 16/01/2007, 11h06
  3. Réponses: 3
    Dernier message: 21/07/2006, 15h50

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