Sobes.tech
Junior — Middle

Πώς πραγματοποιείται η μεταφορά μεταβλητών στη γλώσσα προγραμματισμού Python;

sobes.tech AI

Απάντηση από AI

Στην Python, η μεταβίβαση μεταβλητών σε συναρτήσεις γίνεται μέσω αναφοράς στο αντικείμενο (call by object reference). Αυτό σημαίνει ότι κατά την κλήση μιας συνάρτησης, περνάει μια αναφορά στο αντικείμενο, όχι ένα αντίγραφο της τιμής.

Εάν το αντικείμενο είναι μεταβλητό (π.χ., μια λίστα, ένα λεξικό), οι αλλαγές μέσα στη συνάρτηση θα είναι ορατές και έξω από αυτήν. Εάν το αντικείμενο είναι αμετάβλητο (π.χ., αριθμοί, συμβολοσειρές, πλειάδες), η προσπάθεια να το αλλάξετε μέσα στη συνάρτηση θα οδηγήσει στη δημιουργία ενός νέου αντικειμένου, και το εξωτερικό αντικείμενο θα παραμείνει αμετάβλητο.

Παράδειγμα:

def modify_list(lst):
    lst.append(4)  # τροποποιεί το αντικείμενο

def modify_int(x):
    x += 1  # δημιουργείται ένα νέο αντικείμενο

my_list = [1, 2, 3]
modify_list(my_list)
print(my_list)  # [1, 2, 3, 4]

my_int = 10
modify_int(my_int)
print(my_int)  # 10