Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

4.3 Ενημέρωση στα στοιχεία ενός tuple

Τα tuples στην Python είναι αμετάβλητα, δηλαδή μετά τη δημιουργία τους δεν μπορούν να τροποποιηθούν προσθέτοντας, αφαιρώντας ή αλλάζοντας στοιχεία.

Ωστόσο, μπορείτε να μετατρέψετε ένα tuple σε μια λίστα, να πραγματοποιήσετε τις απαιτούμενες αλλαγές στη λίστα και στη συνέχεια να μετατρέψετε τη λίστα πίσω σε ένα tuple. Αυτή η διαδικασία σάς επιτρέπει να προσθέσετε, να αφαιρέσετε ή να τροποποιήσετε τα στοιχεία ενός αντιγράφου του tuple χωρίς να αλλάξετε το αρχικό tuple.

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

Παρακάτω παρουσιάζεται ένα παράδειγμα για την αντικατάσταση του τελευταίου μήνα “December” με το “Undecimber” σε ένα tuple με τους μήνες του έτους:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
months = ("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")
# Δημιουργία ενός νέου tuple με την αντικατάσταση του τελευταίου μήνα
new_months = months[:-1] + ("Undecimber",)
print(new_months)
months = ("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December") # Δημιουργία ενός νέου tuple με την αντικατάσταση του τελευταίου μήνα new_months = months[:-1] + ("Undecimber",) print(new_months)
months = ("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")

# Δημιουργία ενός νέου tuple με την αντικατάσταση του τελευταίου μήνα
new_months = months[:-1] + ("Undecimber",)

print(new_months)

Στον παραπάνω κώδικα, δημιουργούμε ένα νέο tuple new_months που περιλαμβάνει όλους τους μήνες εκτός από τον τελευταίο μήνα του αρχικού tuple months. Στη συνέχεια, προσθέτουμε τον νέο μήνα “Undecimber” στο τέλος του new_months χρησιμοποιώντας τη σύνθεση months[:-1] + ("Undecimber",). Το [:-1] αντιστοιχεί στην αποκοπή του αρχικού tuple για να πάρουμε όλα τα στοιχεία εκτός από τον τελευταίο μήνα. Το ("Undecimber",) δημιουργεί ένα νέο tuple με τον μήνα “Undecimber” ως μοναδικό στοιχείο. Έτσι, το new_months περιέχει τους μήνες του έτους με την αντικατάσταση του τελευταίου μήνα.

Το αποτέλεσμα εκτέλεσης του κώδικα θα είναι:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'Undecimber')
('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'Undecimber')
('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'Undecimber')

Έτσι, έχουμε δημιουργήσει ένα νέο tuple new_months με την επιθυμητή αντικατάσταση του τελευταίου μήνα “December” με το “Undecimber”.

[adinserter block=”2″]

Ένας τρόπος για να προσθέσετε στοιχεία σε μια tuple είναι να τη μετατρέψετε προσωρινά σε μια λίστα, να προσθέσετε τα επιθυμητά στοιχεία και στη συνέχεια να την μετατρέψετε πίσω σε μια tuple. Ακολουθώντας αυτήν τη διαδικασία, μπορείτε να πετύχετε τον σκοπό σας, αν και πρέπει να λάβετε υπόψη ότι η tuple είναι αμετάβλητη και η μετατροπή της σε λίστα και πίσω σε tuple ενέχει κάποιον πρόσθετο χρόνο εκτέλεσης. Ένα παράδειγμα μετατροπής μιας tuple σε λίστα, προσθήκης στοιχείου και μετατροπής πίσω σε tuple είναι:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
my_tuple = (1, 2, 3)
my_list = list(my_tuple) # Μετατροπή της tuple σε λίστα
my_list.append(4) # Προσθήκη στοιχείου στη λίστα
my_tuple = tuple(my_list) # Μετατροπή της λίστας πίσω σε tuple
my_tuple = (1, 2, 3) my_list = list(my_tuple) # Μετατροπή της tuple σε λίστα my_list.append(4) # Προσθήκη στοιχείου στη λίστα my_tuple = tuple(my_list) # Μετατροπή της λίστας πίσω σε tuple
my_tuple = (1, 2, 3)
my_list = list(my_tuple)  # Μετατροπή της tuple σε λίστα
my_list.append(4)  # Προσθήκη στοιχείου στη λίστα
my_tuple = tuple(my_list)  # Μετατροπή της λίστας πίσω σε tuple

Με αυτήν τη διαδικασία, μπορείτε να προσθέσετε στοιχεία στην tuple, αλλά θα πρέπει να έχετε υπόψη ότι κάθε φορά που προσθέτετε ένα στοιχείο, γίνεται μια νέα αντιγραφή της tuple, καθώς η αρχική tuple είναι αμετάβλητη.

Αν θέλετε να προσθέσετε ένα ή περισσότερα στοιχεία σε μια υπάρχουσα πλειάδα (tuple), μπορείτε να δημιουργήσετε μια νέα πλειάδα με τα επιθυμητά στοιχεία και να την προσθέσετε στην υπάρχουσα πλειάδα. Αυτό γίνεται με τη χρήση του τελεστή “+”.

Παράδειγμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
tuple1 = (1, 2, 3)
tuple2 = ("apple", "banana")
# Δημιουργία νέας πλειάδας με τα στοιχεία του tuple1 και του tuple2
new_tuple = tuple1 + tuple2
print(new_tuple) # Εκτυπώνει (1, 2, 3, "apple", "banana")
tuple1 = (1, 2, 3) tuple2 = ("apple", "banana") # Δημιουργία νέας πλειάδας με τα στοιχεία του tuple1 και του tuple2 new_tuple = tuple1 + tuple2 print(new_tuple) # Εκτυπώνει (1, 2, 3, "apple", "banana")
tuple1 = (1, 2, 3)
tuple2 = ("apple", "banana")

# Δημιουργία νέας πλειάδας με τα στοιχεία του tuple1 και του tuple2
new_tuple = tuple1 + tuple2

print(new_tuple)  # Εκτυπώνει (1, 2, 3, "apple", "banana")

Στο παραπάνω παράδειγμα, δημιουργείται μια νέα πλειάδα new_tuple η οποία περιέχει όλα τα στοιχεία του tuple1 ακολουθούμενα από όλα τα στοιχεία του tuple2. Το αποτέλεσμα είναι η πλειάδα (1, 2, 3, "apple", "banana"), η οποία περιέχει όλα τα αρχικά στοιχεία και τα νέα προσθετικά στοιχεία.

[adinserter block=”3″]

Μπορείτε να χρησιμοποιήσετε τη μέθοδο που περιγράφεται παρακάτω για να αφαιρέσετε ένα στοιχείο από ένα tuple και να δημιουργήσετε ένα νέο tuple με τα επιθυμητά στοιχεία:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
my_tuple = (1, 2, 3, 4, 5)
# Μετατροπή του tuple σε μια λίστα
my_list = list(my_tuple)
# Αφαίρεση του στοιχείου που θέλετε
my_list.remove(3)
# Μετατροπή της λίστας πίσω σε ενα tuple
new_tuple = tuple(my_list)
print(new_tuple) # Εκτύπωση της νέας tuple: (1, 2, 4, 5)
my_tuple = (1, 2, 3, 4, 5) # Μετατροπή του tuple σε μια λίστα my_list = list(my_tuple) # Αφαίρεση του στοιχείου που θέλετε my_list.remove(3) # Μετατροπή της λίστας πίσω σε ενα tuple new_tuple = tuple(my_list) print(new_tuple) # Εκτύπωση της νέας tuple: (1, 2, 4, 5)
my_tuple = (1, 2, 3, 4, 5)

# Μετατροπή του tuple σε μια λίστα
my_list = list(my_tuple)

# Αφαίρεση του στοιχείου που θέλετε
my_list.remove(3)

# Μετατροπή της λίστας πίσω σε ενα tuple
new_tuple = tuple(my_list)

print(new_tuple)  # Εκτύπωση της νέας tuple: (1, 2, 4, 5)

Στον παραπάνω κώδικα, δημιουργείται ένα tuple my_tuple με τις τιμές 1, 2, 3, 4 και 5. Στη συνέχεια, η tuple μετατρέπεται σε μια λίστα my_list χρησιμοποιώντας την ενσωματωμένη συνάρτηση list(). Έπειτα, αφαιρείται το στοιχείο 3 από τη λίστα χρησιμοποιώντας τη μέθοδο remove(). Τέλος, η λίστα μετατρέπεται πίσω σε μια tuple new_tuple με τη χρήση της συνάρτησης tuple(). Η new_tuple περιέχει τα στοιχεία του αρχικού tuple χωρίς το αφαιρεθέν στοιχείο.

Μπορείτε να διαγράψετε μια πλειάδα (tuple) χρησιμοποιώντας τη λέξη-κλειδί del. Αν έχετε μια πλειάδα με το όνομα my_tuple, μπορείτε να τη διαγράψετε με την εντολή del my_tuple. Όταν εκτελεστεί αυτή η εντολή, η πλειάδα θα διαγραφεί πλήρως από τη μνήμη του προγράμματος και δεν θα είναι πλέον προσβάσιμη.

Παρακάτω θα δείτε ένα παράδειγμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
my_tuple = ("apple", "banana", "cherry")
del my_tuple # Διαγράφει τη μεταβλητή my_tuple
print(my_tuple) # Αυτό θα προκαλέσει ένα σφάλμα, καθώς η tuple έχει διαγραφεί
my_tuple = ("apple", "banana", "cherry") del my_tuple # Διαγράφει τη μεταβλητή my_tuple print(my_tuple) # Αυτό θα προκαλέσει ένα σφάλμα, καθώς η tuple έχει διαγραφεί
my_tuple = ("apple", "banana", "cherry")
del my_tuple  # Διαγράφει τη μεταβλητή my_tuple
print(my_tuple)  # Αυτό θα προκαλέσει ένα σφάλμα, καθώς η tuple έχει διαγραφεί

Στον παραπάνω κώδικα, αρχικά δημιουργούμε μια tuple με τα στοιχεία “apple”, “banana” και “cherry”. Έπειτα, με τη χρήση της ενσωματωμένης εντολής del, διαγράφουμε τη μεταβλητή my_tuple. Όταν προσπαθούμε να εκτυπώσουμε την my_tuple μετά τη διαγραφή, προκαλείται ένα σφάλμα, καθώς η tuple έχει διαγραφεί και δεν υπάρχει πλέον στη μνήμη.

1 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων