web-dev-qa-db-fra.com

Python IndentationError: indent inattendu

Voici mon code ... Je reçois une erreur d'indentation mais je ne sais pas pourquoi cela se produit.

->

# loop
while d <= end_date:
    # print d.strftime("%Y%m%d")
    fecha = d.strftime("%Y%m%d")
    # set url
    url = 'http://www.wpemergencia.omie.es//datosPub/marginalpdbc/marginalpdbc_' + fecha + '.1'
    # Descargamos fichero
    response = urllib2.urlopen(url)
    # Abrimos fichero
    output = open(fname,'wb')
    # Escribimos fichero
    output.write(response.read())
    # Cerramos y guardamos fichero
    output.close()
    # fecha++
    d += delta
26
miguelfg

Esegui il tuo programma con

python -t script.py

Vous êtes maintenant informé sur les horaires et les conditions météorologiques.

Sui sistemi * nix, puoi vedere dove sono in esecuzione le schede

cat -A script.py

vous pouvez convertir automatiquement le calendrier en 4 langues avec tout.

expand -t 4 script.py > fixed_script.py

PS Assurer les utilitaires d'un éditeur de programmation (ad. Emacs, vim), non élaboré à partir de tests, durablement la programmation. Question non résolue avec un éditeur de programmation.

PPS. Per gli utenti di emacs,M-xwhitespace-mode mostrerà le stesse informazioni di cat -A all'interno di un buffer emacs!

47
unutbu

trouver tous les onglets et remplacés par 4 espaces dans le bloc-notes ++ .Il a fonctionné.

8
user2287824

Vérifiez si vous avez mélangé des tabulations et des espaces, c’est une source fréquente d’erreurs d’indentation.

7
ilstam

Vous ne pouvez pas mélanger des tabulations et des espaces pour l'identification. La meilleure pratique consiste à convertir tous les onglets en espaces.

Comment régler ceci? Bien, supprimez simplement tous les espaces/tabulations avant chaque ligne et convertissez-les uniformément en espaces de tabulation OR, mais ne mélangez pas. Meilleure solution: activez dans votre éditeur l'option de convertir automatiquement les onglets en espaces.

Sachez également que votre problème actuel peut se situer dans les lignes précédant ce bloc et que python renvoie l'erreur ici, en raison d'une indentation invalide qui ne correspond pas aux identations suivantes!

3
Don Question

Copiez simplement votre script et mettez sous "" "votre code entier" "" ... 

spécifiez cette ligne dans une variable .. like,

a = """ your entire code """
print a.replace('    ','    ') # first 4 spaces tab second four space from space bar

print a.replace('here please press tab button it will insert some space"," here simply press space bar four times")
# here we replacing tab space by four char space as per pep 8 style guide..

exécutez maintenant ce code, en sublime avec ctrl + b, le code indenté sera maintenant imprimé dans la console. c'est tout

0
Mohideen ibn Mohammed