Python Sets - Σύνολα

Python Οδηγός - Μάθημα 9: Python Sets - Σύνολα

Τα sets (σύνολα) είναι μια συλλογή μοναδικών και μη ταξινομημένων στοιχείων στην Python. Χρησιμοποιούνται όταν θέλουμε να αποθηκεύσουμε διαφορετικές τιμές χωρίς διπλότυπα και να κάνουμε γρήγορες πράξεις όπως ένωση, τομή και διαφορά.


Δημιουργία Set

Τα sets ορίζονται με αγκύλες {} ή με τη συνάρτηση set():

fruits = {"μήλο", "πορτοκάλι", "μπανάνα"} numbers = {1, 2, 3, 4, 5} mixed = {1, "Python", True}

👉 Κενό set:

empty_set = set() # ✅ Σωστό empty_dict = {} # ❌ Αυτό είναι dictionary

Ιδιότητες των Sets

  • Δεν αποθηκεύουν διπλότυπα:
    unique_numbers = {1, 2, 2, 3, 4, 4, 5} print(unique_numbers) # {1, 2, 3, 4, 5}
  • Δεν διατηρούν σειρά:
    my_set = {3, 1, 4, 2} print(my_set) # Τα στοιχεία εμφανίζονται με τυχαία σειρά
  • Δεν υποστηρίζουν indexing (όπως οι λίστες και τα tuples).

Προσθήκη & Αφαίρεση Στοιχείων

my_set = {1, 2, 3} my_set.add(4) # Προσθέτει το 4 my_set.remove(2) # Αφαιρεί το 2 (αν δεν υπάρχει -> σφάλμα) my_set.discard(5) # Αφαιρεί το 5 (αν δεν υπάρχει -> δεν κάνει τίποτα)

Βασικές Πράξεις με Sets

1️⃣ Ένωση (Union)

set1 = {1, 2, 3} set2 = {3, 4, 5} print(set1 | set2) # {1, 2, 3, 4, 5}

2️⃣ Τομή (Intersection)

print(set1 & set2) # {3} (τα κοινά στοιχεία)

3️⃣ Διαφορά (Difference)

print(set1 - set2) # {1, 2} (τα στοιχεία που υπάρχουν μόνο στο set1)

4️⃣ Συμμετρική Διαφορά (Symmetric Difference)

print(set1 ^ set2) # {1, 2, 4, 5} (τα στοιχεία που ΔΕΝ είναι κοινά)

Χρήσεις των Sets

Απομάκρυνση διπλότυπων από λίστα:

numbers = [1, 2, 2, 3, 4, 4, 5] unique_numbers = list(set(numbers)) print(unique_numbers) # [1, 2, 3, 4, 5]

Ταχύτατοι έλεγχοι ύπαρξης:

fruits = {"μήλο", "πορτοκάλι", "μπανάνα"} print("μήλο" in fruits) # True

Αποδοτικές πράξεις σύγκρισης δεδομένων.


Τα sets είναι πολύ χρήσιμα όταν θέλουμε να δουλέψουμε με μοναδικά δεδομένα και να εκτελέσουμε γρήγορες μαθηματικές πράξεις! 🚀

Σχόλια

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

Αυτόματο Φως Νύχτας

🚀 Διαγωνισμός Ρομποτικής & Αυτοματισμού! 🤖

🚗🤖 Φτιάξε το Δικό σου Μίνι Ρομποτικό Αυτοκίνητο με Arduino!