Ich hätte eine Frage über die Effizienz der folgenden 3 Beispiele die immer das gleiche herausgeben und welche Ihr benutzen würdet und eine Erklärung dazu ... als Ich angefangen habe mit dem Programmieren habe Ich immer die Else Variante benutzt bis mir jemand gesagt hat das Ich das benötigt und nun weiß Ich gar nicht mehr wofür Ich überhaupt noch Else in den gezeigten Fällen unten brauche.Ich habe leider auch nichts passendes in PEP8 gefunden -> Ausschnitt füge Ich unten an ... Da für mich das kein direkten Unterschied macht muss es bestimmt ein Vorteil bei der einen oder anderen Variante geben. Ich danke euch .
Code: Alles auswählen
def ohne_else(a, b):
if a > b:
return a + 1
return a - 1
def mit_else(a, b):
if a > b:
return a + 1
else:
return a - 1
def einzeler(a, b):
return a + 1 if a > b else a - 1
def main(a, b):
print(ohne_else(a, b))
print(mit_else(a, b))
print(einzeler(a, b))
if __name__ == "__main__":
main(5, 4)
PEP 8:
Code: Alles auswählen
# Correct:
def foo(x):
if x >= 0:
return math.sqrt(x)
else:
return None
def bar(x):
if x < 0:
return None
return math.sqrt(x)