2016-08-30 4 views
-1

Hier der Code.Bitte erläutern Sie die Ausgabe dieses Python-Codes

a = False 
if a == True or True: 
    print "Hell yeah,I'm genius" 
else: 
    print "shit,I am a fool" 

Ausgang ist 'Hell yeah,I'm genius'

+2

Hier gibt es sehr wenig zu erklären. Alles 'oder Wahr' wird zu 'Wahr' ausgewertet, was bedeutet, dass die erste Zeile gedruckt wird. – Karin

+0

@karin Danke ... Ich bin ein Python-Neuling. Also habe ich "False" zu "a" zugewiesen, bedeutet das nicht, dass a 0 ist? Und Wahr oder Wahr == 1? Dann dachte ich Scheiße, ich bin ein Idiot ist die Ausgabe .. –

+0

Das Problem ist mit der "oder True". Entferne diesen Teil und du wirst "Scheiße, ich bin ein Idiot" bekommen. Aufgrund von "oder True" jedes Mal, wenn die If-Bedingung erfüllt ist und Sie bekommen "Hell yeah I ', m Genie" –

Antwort

2
a ==True or True 

Wahr Betrachten 1 und 0 ist Falsch.

Da a auf False gesetzt ist (a = False in der ersten Anweisung des Codes), wird der erste Teil 'a == True', d. H. 0 == 1, 0 (False) zurückgeben.

Dann bleibt False oder True, da 'a == True' False ist. Also wird es wie 0 oder 1 (False oder True) sein.

Wir wissen, dass

  • 0 und 0 = 0
  • 1 und 0 = 0
  • 1 und 1 = 1
  • 0 ODER 0 = 0
  • 0 OR 1 = 1
  • 1 OR 1 = 1

Also in Ihrem Fall , 0 ODER 1 wird zu 1 führen, d.h. wahr.

Zusammenfassung:

a == True or True => False or True => True 

Das ist, warum "Hell yeah, ich bin Genie" gedruckt wird.

+0

Vielen Dank ...! –

-1

Alles stimmt, wird es dieser Abschnitt laufen ...

if True: 

    print "Hell yeah,I'm genius" 

else: 

    print "shit,I am a fool" 

Dieser kehrt auch "Hell yeah,I'm genius"

+2

Wenn du dies als Antwort postest, dann bearbeite es zumindest richtig ... – Julien

+0

Wann wird in diesem Fall "Scheiße, ich bin ein Idiot" gedruckt? –

+0

@DineshPundkar Wenn Sie in Python2 sind, dann können Sie 'True = False' sagen, bevor Sie dieses Beispiel ausführen, und es wird Ihnen die gewünschte Ausgabe geben;) – Pasha

Verwandte Themen