Si avvisano tutti gli utenti che a causa dell'aggiornamento della board alcune password devono essere resettate.
In caso di problemi di login si prega di resettare la propria password.

errore in maestra.py

Forum dedicato ai gruppi di studio di debianizzati.org
Rispondi
Avatar utente
brunology
Full Member
Full Member
Messaggi: 173
Iscritto il: 28/10/2007, 12:20
Contatta:

errore in maestra.py

Messaggio da brunology »

Quando eseguo il nostro scriptMaestra.py, ottengo questo errore:

Codice: Seleziona tutto

  File "maestra.py", line 20
    risultato = x//y                               #divisione per interi
            ^
SyntaxError: invalid syntax


Immagino di aver fatto un errore nel copia e incolla dal wiki, ma non riesco a vederlo.

Ecco il mio file:

Codice: Seleziona tutto

#!/usr/bin/env python3
# -*- coding: utf-8 -*-   #Non obbligatorio

name = input("Come ti chiami?\n > ")
x = int(input("Inserisci il dividendo\n >"))  #Richiesta del primo intero
y = int(input("inserisci il divisore\n > "))  #Richiesta del secondo intero

# Metodo "tradizionale"
#print("""
#Dimmi %s, quanto volte sta il %d nel %d?
#E con che resto?
#""" % (name, x, y))

# Metodo con "format" (solo Python 3.1)
print("""
Dimmi {0}, quanto volte sta il {1} nel {2}?    #fare attenzione ai numero nelle parentesi graffe
E con che resto?
""" .format(name, x, y)                        # name={0}, x={1}, y={2}

risultato = x//y                               #divisione per interi
resto = x%y                                    #modulo o "resto"
print("Il risultato e'", risultato)
print("Il resto e'", resto)
Stemby
wiki member
wiki member
Messaggi: 1430
Iscritto il: 11/04/2009, 15:47
Località: Missaglia (LC)

Re: errore in maestra.py

Messaggio da Stemby »

Non ho provato ad eseguirlo, ma leggendo velocemente mi è saltato all'occhio un errore:

Codice: Seleziona tutto

""" .format(name, x, y)                        # name={0}, x={1}, y={2}


Tra le virgolette e il punto non ci devono essere spazi: format() è un metodo stringa, quindi la sintassi è:

Codice: Seleziona tutto

stringa.format()


Prova a vedere se così funziona.

Ciao!

[EDIT]
Altro errore che mi è saltato all'occhio: alla funzione print() manca la parentesi di chiusura.
Avatar utente
brunology
Full Member
Full Member
Messaggi: 173
Iscritto il: 28/10/2007, 12:20
Contatta:

Re: errore in maestra.py

Messaggio da brunology »

grazie Stemby

sì, l'errore era dovuto alla mancata parentesi di chiusura di print
avrei dovuto vederla...

comunque lo script andrebbe migliorato:
- almeno sostituire input con print quando la maestra fa la domanda
- poi c'è un commento nella stringa e quindi viene stampato

scriverei così:

Codice: Seleziona tutto

input("""
Dimmi {0}, quante volte sta il {1} nel {2}?
E con che resto?
""".format(name, x, y)                        # name={0}, x={1}, y={2}
)
Avatar utente
Risca
e-zine member
e-zine member
Messaggi: 2011
Iscritto il: 09/02/2009, 11:37
Località: Torino-Milano
Contatta:

Re: errore in maestra.py

Messaggio da Risca »

Ottimo lavoro! Mi raccomando ricordati di correggere il wiki O0
Avatar utente
brunology
Full Member
Full Member
Messaggi: 173
Iscritto il: 28/10/2007, 12:20
Contatta:

Re: errore in maestra.py

Messaggio da brunology »

fatto
Rispondi