View Full Version : [Python] - Domanda sull'if
88MIKI88
08-10-2008, 20:37
Stavo testando una funzione e ho notato una cosa di questo genere nella condizione dell'if se metto una cosa del tipo "If x1 and x2 == 0: ....." l'interprete non la legge
def Funzione1(x1,y1,x2,y2):
if x1 and x2 == 0:
print "Immettere valori superiori allo 0"
.......
.......
Come mai?? Ho testato più volte il programma controllando sintassi e tutto e non ci sono errori perchè se tolgo "and x2" la frase viene stampata.....
88MIKI88
08-10-2008, 20:49
Rispondi alla domanda.....a me interessava che se una delle x avesse valore 0 stampasse quella scritta ma non funzia
Non è una domanda... intendevo dire "è così perchè x2 non è zero" (adesso che mi rileggo avevo pure scritto sbagliato a scrivere... :fagiano: ). Comunque, se vuoi che nessuna delle due sia zero devi usare l'or
88MIKI88
08-10-2008, 21:02
def Pendenza(x1,y1,x2,y2):
if x1 or x2 == 0:
print "Immettere valori superiori allo 0"
else:
dx = x2 - x1
ny = y2 - y1
Risultato = ny / dx
return Risultato
Adesso stampa solo "immettere valori superiori allo 0" qualsiasi numero inserisca
if x1 == 0 or x2 == 0:
print "blabla"
Con questo se una delle due x è uguale a zero dovrebbe stampare un messaggio. ;)
def Pendenza(x1,y1,x2,y2):
if x1 or x2 == 0:
print "Immettere valori superiori allo 0"
else:
dx = x2 - x1
ny = y2 - y1
Risultato = ny / dx
return Risultato
Adesso stampa solo "immettere valori superiori allo 0" qualsiasi numero inserisca
http://www.google.it/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fwww.gentoo.it%2FProgrammazione%2Fbyteofpython%2Foperator-precedence.html&ei=HRbtSPzSD5j20AWnpdHTDA&usg=AFQjCNEuyHT_-BIRxj0Ox_qRqhuTTIz9VQ&sig2=MQvjtjm9QN2WF8KTcGZCDA
cdimauro
09-10-2008, 07:37
Stavo testando una funzione e ho notato una cosa di questo genere nella condizione dell'if se metto una cosa del tipo "If x1 and x2 == 0: ....." l'interprete non la legge
def Funzione1(x1,y1,x2,y2):
if x1 and x2 == 0:
print "Immettere valori superiori allo 0"
.......
.......
Come mai?? Ho testato più volte il programma controllando sintassi e tutto e non ci sono errori perchè se tolgo "and x2" la frase viene stampata.....
Io farei così:
def Funzione1(x1,y1,x2,y2):
if x1 and x2:
print 'Bravo picciotto! Adesso posso travagggghiari.'
else:
print 'Immettere valori superiori allo 0'
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.