errore in maestra.py

Forum dedicato ai gruppi di studio di debianizzati.org

errore in maestra.py

Messaggioda brunology » 20/11/2011, 15:29

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)
Avatar utente
brunology
Full Member
Full Member
 
Messaggi: 173
Iscritto il: 28/10/2007, 12:20

Re: errore in maestra.py

Messaggioda Stemby » 20/11/2011, 16:04

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.
Stemby
wiki member
wiki member
 
Messaggi: 1427
Iscritto il: 11/04/2009, 15:47
Località: Missaglia (LC)

Re: errore in maestra.py

Messaggioda brunology » 20/11/2011, 16:41

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
brunology
Full Member
Full Member
 
Messaggi: 173
Iscritto il: 28/10/2007, 12:20

Re: errore in maestra.py

Messaggioda Risca » 21/11/2011, 0:20

Ottimo lavoro! Mi raccomando ricordati di correggere il wiki O0
Avatar utente
Risca
e-zine member
e-zine member
 
Messaggi: 2011
Iscritto il: 09/02/2009, 11:37
Località: Torino-Milano

Re: errore in maestra.py

Messaggioda brunology » 22/11/2011, 0:29

fatto
Avatar utente
brunology
Full Member
Full Member
 
Messaggi: 173
Iscritto il: 28/10/2007, 12:20


Torna a Accademia debianizzata

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite