Στην Python, οι συμβολοσειρές (strings) αναφέρονται σε μια σειρά χαρακτήρων, και μπορούν να περικλείονται σε ενιαία ή διπλά εισαγωγικά. Είναι αναλλοίωτες (immutable), δηλαδή δεν μπορούν να τροποποιηθούν αφού δημιουργηθούν. Μπορούν να επεξεργαστούν με πολλούς τρόπους χρησιμοποιώντας ενσωματωμένες μεθόδους και συναρτήσεις.
Παρακάτω παραθέτουμε μερικά παραδείγματα στην Python σχετικά με τις συμβολοσειρές:
# Δημιουργία ενός string my_string = "Hello World!" print(my_string) # Hello World! # Μήκος του string print(len(my_string)) # 12 # Πρόσβαση σε ένα συγκεκριμένο χαρακτήρα print(my_string[0]) # H print(my_string[-1]) # ! # Αλλαγή του χαρακτήρα στη θέση 6 my_string = my_string[:6] + 'Python' print(my_string) # Hello Python! # Εύρεση της θέσης ενός χαρακτήρα print(my_string.index('P')) # 6 # Μετατροπή σε κεφαλαία/πεζά print(my_string.upper()) # HELLO PYTHON! print(my_string.lower()) # hello python! # Έλεγχος αν ένα string ξεκινά με συγκεκριμένο χαρακτήρα print(my_string.startswith('H')) # True # Έλεγχος αν ένα string περιέχει ένα συγκεκριμένο υποσύνολο χαρακτήρων print('Python' in my_string) # True
Στην Python, οι συμβολοσειρές είναι περικυκλωμένες με είτε μονά εισαγωγικά είτε διπλά εισαγωγικά.
Για παράδειγμα, οι παρακάτω δηλώσεις συμβολοσειράς είναι ισοδύναμες:
x = 'hello' y = "hello"
Μπορείτε να εμφανίσετε μια συμβολοσειρά χρησιμοποιώντας τη συνάρτηση print(). Για παράδειγμα:
print("Hello, World!")
Επιπλέον, οι συμβολοσειρές στην Python μπορούν να συνενωθούν με τον τελεστή “+” και να επαναληφθούν με τον τελεστή “*”. Για παράδειγμα:
x = "Hello" y = "World" z = x + " " + y print(z) # εκτύπωση: "Hello World" x = "Hello" y = x * 3 print(y) # εκτύπωση: "HelloHelloHello"
Η ανάθεση ενός αλφαριθμητικού σε μια μεταβλητή γίνεται με το όνομα της μεταβλητής ακολουθούμενο από ένα ίσον και το αλφαριθμητικό:
Παράδειγμα:
my_string = "Αυτή είναι μια συμβολοσειρά!" print(my_string)
Το αποτέλεσμα στην οθόνη θα είναι:
Αυτή είναι μια συμβολοσειρά!
Μπορείτε να αντιστοιχίσετε ένα πολλαπλών γραμμών συμβολοσειρά σε μια μεταβλητή χρησιμοποιώντας τρεις εισαγωγικές:
Παράδειγμα:
my_string = '''Αυτή είναι μια πολλαπλών γραμμών συμβολοσειρά''' print(my_string)
Αυτό θα εμφανίσει:
Αυτή είναι μια πολλαπλών γραμμών συμβολοσειρά
Μπορείτε να αντιστοιχίσετε ένα πολλαπλών γραμμών συμβολοσειρά σε μια μεταβλητή χρησιμοποιώντας τρεις μονά εισαγωγικά της μορφής ”’ ή τρεις διπλά εισαγωγικά της μορφής “”” :
multiline_string = '''Καλημέρα Σήμερα είναι μια όμορφη μέρα Ας την αξιοποιήσουμε''' print(multiline_string)
Αποτέλεσμα:
Καλημέρα Σήμερα είναι μια όμορφη μέρα Ας την αξιοποιήσουμε
Στην Python, τα strings είναι σαν πίνακες από bytes που αναπαριστούν τους Unicode χαρακτήρες.
Ωστόσο, στην Python δεν υπάρχει τύπος δεδομένων για έναν μεμονωμένο χαρακτήρα. Ένας μεμονωμένος χαρακτήρας είναι απλά ένα string με μήκος 1.
Οι αγκύλες μπορούν να χρησιμοποιηθούν για να αποκτηθούν πρόσβαση στα στοιχεία του string.
Παράδειγμα:
my_string = "Hello, World!" print(my_string[0]) # Output: H print(my_string[7]) # Output: W
Μπορούμε επίσης να προσπελάσουμε τους χαρακτήρες από το τέλος προς την αρχή χρησιμοποιώντας αρνητικούς δείκτες:
my_string = "Hello, World!" print(my_string[-1]) # Output: ! print(my_string[-6]) # Output: W
Δεδομένου ότι οι συμβολοσειρές στην Python είναι πίνακες (arrays) από bytes που αναπαριστούν χαρακτήρες Unicode, μπορούμε να επαναλάβουμε τους χαρακτήρες μιας συμβολοσειράς με ένα for loop.
Παραδειγμα 1: Χρησιμοποιώντας τον βρόχο for για να εκτυπώσουμε κάθε χαρακτήρα της συμβολοσειράς.
my_string = "Hello World!" for char in my_string: print(char)
Output:
H e l l o W o r l d !
Παραδειγμα 2: Χρησιμοποιώντας τον βρόχο for για να επεξεργαστούμε κάθε χαρακτήρα της συμβολοσειράς.
my_string = "Hello World!" new_string = "" for char in my_string: if char != "o": new_string += char print(new_string)
Output:
Hell Wrld!
Για να πάρετε το μήκος ενός string, χρησιμοποιήστε τη συνάρτηση len().
string = "Hello World" print(len(string)) # εκτυπώνει: 11
Σε αυτό το παράδειγμα, η μεταβλητή string
περιέχει τη συμβολοσειρά "Hello World"
. Το μήκος της συμβολοσειράς υπολογίζεται με τη χρήση της συνάρτησης len()
και εκτυπώνεται στη συνέχεια στην οθόνη.
ια να ελέγξουμε αν μια συγκεκριμένη φράση ή χαρακτήρας είναι παρόν σε ένα string, μπορούμε να χρησιμοποιήσουμε τη λέξη-κλειδί “in”.
Αν ο χαρακτήρας ή η φράση είναι παρόν στο string, η συνθήκη θα επιστρέψει True, διαφορετικά θα επιστραφεί False.
# Check if "world" is present in the string txt = "Hello, world" if "world" in txt: print("Yes, 'world' is present in the string.") # Check if "apple" is NOT present in the string txt = "Banana, orange, grape" if "apple" not in txt: print("No, 'apple' is not present in the string.")
Αν τρέξετε αυτόν τον κώδικα, θα δείτε τα παρακάτω αποτελέσματα:
Yes, 'world' is present in the string. No, 'apple' is not present in the string.
Για να ελέγξουμε αν ένα συγκεκριμένο κείμενο ή χαρακτήρας ΔΕΝ υπάρχει σε μια συμβολοσειρά, μπορούμε να χρησιμοποιήσουμε τη λέξη-κλειδί “not in”.
Παράδειγμα:
text = "Hello World" if "apple" not in text: print("The word 'apple' is not present")
Αυτό θα εμφανίσει το ακόλουθο κείμενο:
The word 'apple' is not present