Voici le code .:
def myfirst_yoursecond(p,q):
a = p.find(" ")
b = q.find(" ")
str_p = p[0:a]
str_q = p[b+1:]
if str_p == str_q:
result = True
else:
result = False
return result
Voici l'erreur:
Traceback (most recent call last):
File "vm_main.py", line 26, in <module>
import main
File "/tmp/vmuser_ssgopfskde/main.py", line 22
result = False
^
IndentationError: expected an indented block
Qu'est ce qui ne va pas avec mon code?
Vous avez mélangé des onglets et des espaces. Cela peut conduire à des erreurs déroutantes.
Je suggérerais d'utiliser seulement tabs ou seulement espaces pour l'indentation.
Utiliser seulement des espaces est généralement le choix le plus facile. La plupart des éditeurs ont une option pour convertir automatiquement les onglets en espaces. Si votre éditeur dispose de cette option, activez-la.
En passant, votre code est plus bavard qu'il ne le faut. Au lieu de cela:
if str_p == str_q:
result = True
else:
result = False
return result
Faites juste ceci:
return str_p == str_q
Vous semblez aussi avoir un bug sur cette ligne:
str_q = p[b+1:]
Je vous laisse découvrir quelle est l'erreur.
Cette erreur se produit également si vous avez un bloc sans déclaration.
Par exemple:
def my_function():
for i in range(1,10):
def say_hello():
return "hello"
Notez que le bloc for
est vide. Vous pouvez utiliser l'instruction pass si vous souhaitez tester le code restant dans le module.
Si vous utilisez un mac et du texte sublime 3, c’est ce que vous faites.
Accédez à votre /Packages/User/
et créez un fichier appelé Python.sublime-settings
.
Généralement, /Packages/User
se trouve dans votre ~/Library/Application Support/Sublime Text 3/Packages/User/Python.sublime-settings
si vous utilisez mac os x.
Ensuite, vous mettez ceci dans le Python.sublime-settings
.
{
"tab_size": 4,
"translate_tabs_to_spaces": false
}
Nous remercions Mark Byer answer , sublime text 3 docs et guide de style python .
Cette réponse s'adresse principalement aux lecteurs qui ont le même problème et qui tombent sur le même problème et qui utilisent le texte sublime 3 sur Mac OS X.
Vous devez installer un éditeur (ou IDE) prenant en charge la syntaxe Python. Il peut mettre en évidence le code source et effectuer une vérification de format de base .Par exemple: Eric4, Spyder, Ninjia ou Emacs, Vi.