Python Συμβολοσειρές: Αντικατάσταση, Συμμετοχή, Διαίρεση, Reverse
⚡ Έξυπνη Σύνοψη
Python Οι συμβολοσειρές είναι αμετάβλητες ακολουθίες χαρακτήρων με πολλές ενσωματωμένες μεθόδους επεξεργασίας κειμένου. Τα παρακάτω παραδείγματα δείχνουν την τεμαχισμό, τους τελεστές συμβολοσειρών, την αντικατάσταση(), την upper() και την lower(), την join(), την αντιστροφή και την split() χρησιμοποιώντας εκτελέσιμο κώδικα.

In Python, όλα είναι αντικείμενα, και οι συμβολοσειρές είναι επίσης αντικείμενα. A Python Μια συμβολοσειρά μπορεί να δημιουργηθεί απλώς περικλείοντας χαρακτήρες σε διπλά εισαγωγικά.
Για παράδειγμα:
var = "Γειά σου Κόσμε!"
Πρόσβαση σε τιμές σε συμβολοσειρές
Python δεν υποστηρίζει τύπο χαρακτήρων; αυτά αντιμετωπίζονται ως συμβολοσειρές μήκους ένα, οι οποίες θεωρούνται επίσης ως υποσυμβολοσειρά.
Χρησιμοποιούμε αγκύλες για τον τεμαχισμό μαζί με το ευρετήριο ή τους δείκτες για να λάβουμε μια υποσυμβολοσειρά.
var1 = "Guru99!"
var2 = "Software Testing"
print ("var1[0]:",var1[0])
print ("var2[1:5]:",var2[1:5])
Παραγωγή:
var1[0]: G var2[1:5]: oftw
Διάφορα String Operaκορμοί
Υπάρχουν διάφοροι τελεστές συμβολοσειρών που μπορούν να χρησιμοποιηθούν με διαφορετικούς τρόπους, όπως η συνένωση μιας διαφορετικής συμβολοσειράς.
Ας υποθέσουμε ότι a=guru και b=99, τότε a+b= “guru99”. Ομοίως, αν χρησιμοποιήσετε a*2, θα δώσει “GuruGuruΟμοίως, μπορείτε να χρησιμοποιήσετε άλλους τελεστές σε μια συμβολοσειρά.
| OperaTor | Περιγραφή | Παράδειγμα |
|---|---|---|
| [] | Φέτα – δίνει το γράμμα από τον δεδομένο δείκτη | το a[1] θα δώσει το "u" από τη λέξη Guru ως εκ τούτου (0=G, 1=u, 2=r και 3=u)
x="Guru" print (x[1]) |
| [ : ] | Εύρος τμήματος – δίνει τους χαρακτήρες από το δεδομένο εύρος | x [1:3] θα δώσει το «ur» από τη λέξη GuruΝα θυμάστε ότι δεν θα λάβει υπόψη το 0 που είναι το G, αλλά τη λέξη μετά από αυτό που είναι ur.
x="Guru" print (x[1:3]) |
| in | Μέλος – επιστρέφει true εάν υπάρχει ένα γράμμα στη δεδομένη συμβολοσειρά | Το u υπάρχει στο word Guru και επομένως θα δώσει 1 (Αληθές)
x="Guru"
print ("u" in x)
|
| όχι σε | Μέλος – επιστρέφει true εάν ένα γράμμα δεν υπάρχει στη δεδομένη συμβολοσειρά | Το l δεν υπάρχει στη λέξη Guru και επομένως θα δώσει 1
x="Guru"
print ("l" not in x)
|
| r/R | Η ακατέργαστη συμβολοσειρά καταστέλλει το πραγματικό νόημα των χαρακτήρων διαφυγής. | Εκτυπώστε r'\n' prints \n και εκτυπώστε R'/n' prints \n |
| % – Χρησιμοποιείται για μορφή συμβολοσειράς | %r – Εισάγει την κανονική αναπαράσταση συμβολοσειράς του αντικειμένου (δηλαδή, repr(o)) %s – Εισάγει την αναπαράσταση συμβολοσειράς παρουσίασης του αντικειμένου (δηλαδή, str(o)) %d – θα μορφοποιήσει έναν αριθμό για εμφάνιση | Η έξοδος αυτού του κωδικού θα είναι "guru 99".
name = 'guru'
number = 99
print ('%s %d' % (name,number))
|
| + | Συνδέει 2 χορδές | Συνδέει χορδές και δίνει το αποτέλεσμα
x="Guru" y="99" print (x+y) |
| * | επαναλαμβάνω | Εκτυπώνει τον χαρακτήρα δύο φορές.
x="Guru" y="99" print (x*2) |
Μερικά ακόμη παραδείγματα
Μπορείτε να ενημερώσετε ένα Python συμβολοσειράς εκχωρώντας ξανά μια μεταβλητή σε μια άλλη συμβολοσειρά. Η νέα τιμή μπορεί να σχετίζεται με μια προηγούμενη τιμή ή με μια εντελώς διαφορετική συμβολοσειρά.
x = "Hello World!" print(x[:6]) print(x[0:6] + "Guru99")
Παραγωγή:
Hello Hello Guru99
Σημείωση: – Η τομή [:6] ή [0:6] έχει το ίδιο αποτέλεσμα.
Python Μέθοδος συμβολοσειράς αντικατάστασης().
Η μέθοδος replace() επιστρέφει ένα αντίγραφο της συμβολοσειράς στην οποία οι τιμές της παλιάς συμβολοσειράς έχουν αντικατασταθεί με τη νέα τιμή.
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print(newstring)
Παραγωγή:
I love Guru99
Αλλαγή κεφαλαίων και πεζών χορδών
In Python, μπορείτε ακόμη και να αλλάξετε τη συμβολοσειρά σε κεφαλαία ή πεζά.
string="python at guru99" print(string.upper())
Παραγωγή:
PYTHON AT GURU99
Ομοίως, μπορείτε επίσης να χρησιμοποιήσετε άλλες συναρτήσεις όπως η capitalize().
string="python at guru99" print(string.capitalize())
Παραγωγή:
Python at guru99
Μπορείτε επίσης να μετατρέψετε τη συμβολοσειρά σας σε πεζά γράμματα.
string="PYTHON AT GURU99" print(string.lower())
Παραγωγή:
python at guru99
Χρησιμοποιώντας τη συνάρτηση "join" για τη συμβολοσειρά
Η συνάρτηση join() είναι ένας πιο ευέλικτος τρόπος συνένωσης μιας συμβολοσειράς. Με τη συνάρτηση join(), μπορείτε να προσθέσετε οποιονδήποτε χαρακτήρα στη συμβολοσειρά.
Για παράδειγμα, εάν θέλετε να προσθέσετε μια άνω και κάτω τελεία (:) μετά από κάθε χαρακτήρα στη συμβολοσειρά "Python", μπορείτε να χρησιμοποιήσετε τον ακόλουθο κώδικα.
print(":".join("Python"))
Παραγωγή:
P:y:t:h:o:n
Reversing String
Χρησιμοποιώντας τη συνάρτηση reversed(), μπορείτε να αντιστρέψετε τη συμβολοσειρά. Για παράδειγμα, αν έχουμε τη συμβολοσειρά "12345" και στη συνέχεια εφαρμόσουμε τον κώδικα για τη συνάρτηση reversed() όπως φαίνεται παρακάτω.
string="12345"
print(''.join(reversed(string)))
Παραγωγή:
54321
Split String
Το split strings είναι μια άλλη συνάρτηση που μπορεί να εφαρμοστεί PythonΑς το δούμε για τη συμβολοσειρά "guru99 career guru99". Αρχικά, εδώ θα διαχωρίσουμε τη συμβολοσειρά χρησιμοποιώντας την εντολή word.split και θα λάβουμε το αποτέλεσμα.
word="guru99 career guru99"
print(word.split(' '))
Παραγωγή:
['guru99', 'career', 'guru99']
Για να το κατανοήσουμε καλύτερα, θα δούμε ένα ακόμη παράδειγμα διαίρεσης. Αντί για κενό (' '), θα το αντικαταστήσουμε με ('r') και θα διαιρέσει τη συμβολοσειρά όπου αναφέρεται το 'r' στη συμβολοσειρά.
word="guru99 career guru99"
print(word.split('r'))
Παραγωγή:
['gu', 'u99 ca', 'ee', ' gu', 'u99']
Σημαντική σημείωση: In Python, οι συμβολοσειρές είναι αμετάβλητες.
Σκεφτείτε τον ακόλουθο κώδικα:
x = "Guru99"
x.replace("Guru99","Python")
print(x)
Παραγωγή:
Guru99
Θα επιστρέψει ακόμα Guru99. Αυτό συμβαίνει επειδή το x.replace(“Guru99", "Python”) επιστρέφει ένα αντίγραφο του Χ με τις αντικαταστάσεις που έγιναν.
Θα χρειαστεί να χρησιμοποιήσετε τον ακόλουθο κώδικα για να παρατηρήσετε τις αλλαγές.
x = "Guru99"
x = x.replace("Guru99","Python")
print(x)
Παραγωγή:
Python
Οι παραπάνω κωδικοί είναι Python 3 παραδείγματα. Αν θέλετε να τα εκτελέσετε Python 2, λάβετε υπόψη τον ακόλουθο κώδικα.
Python 2 Παράδειγμα
#Accessing Values in Strings
var1 = "Guru99!"
var2 = "Software Testing"
print "var1[0]:",var1[0]
print "var2[1:5]:",var2[1:5]
#Some more examples
x = "Hello World!"
print x[:6]
print x[0:6] + "Guru99"
#Python String replace() Method
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print newstring
#Changing upper and lower case strings
string="python at guru99"
print string.upper()
string="python at guru99"
print string.capitalize()
string="PYTHON AT GURU99"
print string.lower()
#Using "join" function for the string
print":".join("Python")
#Reversing String
string="12345"
print''.join(reversed(string))
#Split Strings
word="guru99 career guru99"
print word.split(' ')
word="guru99 career guru99"
print word.split('r')
x = "Guru99"
x.replace("Guru99","Python")
print x
x = "Guru99"
x = x.replace("Guru99","Python")
print x
Παραγωγή:
var1[0]: G var2[1:5]: oftw Hello Hello Guru99 I love Guru99 PYTHON AT GURU99 Python at guru99 python at guru99 P:y:t:h:o:n 54321 ['guru99', 'career', 'guru99'] ['gu', 'u99 ca', 'ee', ' gu', 'u99'] Guru99 Python
Python έχει εισαγάγει μια συνάρτηση .format() η οποία καταργεί τη χρήση της δυσκίνητης %d και ούτω καθεξής για τη μορφοποίηση συμβολοσειρών.
" Μάθε περισσότερα για Python Διαίρεση συμβολοσειράς()
