Middle+
Τι είναι το yield στην Python;
sobes.tech AI
Απάντηση από AI
Στην Python, η λέξη-κλειδί yield χρησιμοποιείται μέσα σε μια συνάρτηση για τη δημιουργία ενός γεννήτορα. Αντί να επιστρέφει μια τιμή και να τερματίζει τη συνάρτηση, το yield αναστέλλει την εκτέλεση της συνάρτησης, επιστρέφει μια τιμή στον καλούντα κώδικα και διατηρεί την κατάσταση της συνάρτησης για μελλοντική συνέχιση.
Αυτό επιτρέπει την αποτελεσματική εργασία με μεγάλες ακολουθίες δεδομένων, χωρίς να τις φορτώνει πλήρως στη μνήμη.
Παράδειγμα:
def count_up_to(n):
count = 1
while count <= n:
yield count
count += 1
for number in count_up_to(5):
print(number)
Έξοδος:
1
2
3
4
5
Έτσι, το yield επιτρέπει τη δημιουργία δεικτών με τεμπέλικη παραγωγή τιμών.