Forum >> Principianti >> def. Un problema assurdo

Pagina: 1

Sto proseguendo le mie esecitazioni sulle basi del python e sono arrivato alla definizione di funzioni. Per fare una prova scrivo:





def prova():

print ("ciao")







e quando lancio il programma dal terminale mi dice che c'è un errore (indented block) alla riga 2.


Mi sono detto: ora faccio copia incolla dal libro che sto seguendo e ho copiato e incollato




def stampa_brani():
print('Terror di tutta la foresta egli è,')

Lancio il programma ma stessa cosa! Come è possibile che python mi sta sfanculando segnalando l'errore in un banale print????

Beh, capisci che se copi e incolli il codice in un post, come sappiamo che l'hai incollato giusto? Soprattutto se non lo formatti con il pulsante "code" (quello con gli "<>" nella barra dei pulsanti).


Comunque, l'errore è evidente: la riga 2 non è rientrata correttamente. Basta verificare. Probabilmente c'è uno spazio spurio prima di "def", o qualche altro carattere nascosto che ti trascini dietro nel copia e incolla.

https://leanpub.com/capirewxpython: Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com: Python in Windows, il mio blog e le mie guide
RicPol, ti assicuro che non ci stanno spazi, peraltro è un'ora che lo scrivo e lo riscrivo. L'ho appena riscritto per l'ennesima volta e mi dà lo stesso errore. Te lo riscrivo, così come sta nell'editor, ho controllato eventuali spazi





def prova():
print ("ciao")


def prova():
print ("ciao")
Ed infatti ti manca il concetto di indentazione...

Dovrebbe essere:

def prova():
    print("ciao)


Approfondisci con una buona guida i concetti basilari, altrimenti non andrai lontano.

Cya

Grazie Daniele, si accettano consigli sulla guida :hug-left:
Grazie Daniele, si accettano consigli sulla guida :hug-left:

Guarda su questo sito, c'è un lungo elenco di consigli.


Pagina: 1



Esegui il login per scrivere una risposta.