Phyton mit Return?

2 Antworten

Schau dir erstmal an was return bedeutet:

The Python return statement is a special statement that you can use inside a function or method to send the function's result back to the caller. A return statement consists of the return keyword followed by an optional return value. The return value of a Python function can be any Python object. Source: https://realpython.com/python-return-statement/#:~:text=The%20Python%20return%20statement%20is%20a%20special%20statement%20that%20you,can%20be%20any%20Python%20object.

Dieses Return Statement gibt's aber in seeeehr vielen Programmiersprachen und funktioniert eigentlich immer gleich. Du rufst eine Funktion auf und mit dem Return Statement gibt's du dann den Wert wieder zurück dort wo du die Funktion aufgerufen hast und machst dann da wieder weiter. Normalerweise ist ja alles in dem Funktionsaufruf local nur in dieser Funktion verfügbar und nicht außerhalb in Main() z.B. wenn man den Wert nicht zurück gibt. Also im Normalfall.

Mit Print printest du nur etwas in der Console.. das nützt dir nichts wenn du z.B. mit dem String/der Zahl bzw. Ergebnis weiterarbeiten willst außerhalb der Funktion.


skkz96 
Fragesteller
 17.08.2022, 19:48

ja genau das habe ich auch gelesen. Jedoch fällt es mir gerade ziemlich schwer diese Funktion aufzustellen.
ich versuche es gerade mit def Prime_candidate , aber irgendwie habe ich das Gefühl, das selbst mein Ansatz falsch ist

0
skkz96 
Fragesteller
 17.08.2022, 19:50

x = 5

def prime_candidate()

if x <= 0:

  return None

elif x == 1:

  return 2

else:

  prime_candidate = 2

  prime_counter = 1

   

  while prime_counter < x:

    prime_candidate = prime_candidate + 1

    prim = True

     

    if prime_candidate % 2 == 0:

      prim = False

    else:

      divisor = 3

      while divisor < prime_candidate:

        if prime_candidate % divisor == 0:

          prim = False

          break

        divisor = divisor + 2

      if prim == True:

        prime_counter = prime_counter + 1

  return prime_candidate

0

wenn du eine Funktion definierst und am ende eine return Befehl gibst, dann wird beim Aufrufen der Funktion dir praktisch das im return definierte ausgegeben. Also wenn du das ganze in eine Funktion schmeißt und statt print(...) return(...) schreibst sollte dir in der Konsole dann es ausgeworfen werden. Solltest du allerdings den Code mit print statements weiterführen, wird dir das return nicht mehr wahrscheinlich in der Konsole ausgeworfen