Σε αυτό το πρόγραμμα. θα μάθετε να ελέγχετε αν μια συμβολοσειρά είναι palindrome ή όχι
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες θεματολογίες προγραμματισμού Python:
- Python αν… αλλιώς Δήλωση
- Χορδές Python
- Μέθοδοι συμβολοσειράς
Το palindrome είναι μια συμβολοσειρά που είναι η ίδια ανάγνωση προς τα εμπρός ή προς τα πίσω.
Για παράδειγμα, "dad"
είναι το ίδιο προς τα εμπρός ή προς τα πίσω. Ένα άλλο παράδειγμα είναι η «aibohphobia», που κυριολεκτικά σημαίνει, ένας ευερέθιστος φόβος για τα palindromes.
Πηγαίος κώδικας
# Program to check if a string is palindrome or not my_str = 'aIbohPhoBiA' # make it suitable for caseless comparison my_str = my_str.casefold() # reverse the string rev_str = reversed(my_str) # check if the string is equal to its reverse if list(my_str) == list(rev_str): print("The string is a palindrome.") else: print("The string is not a palindrome.")
Παραγωγή
Η συμβολοσειρά είναι ένα palindrome.
Σημείωση: Για να δοκιμάσετε το πρόγραμμα, αλλάξτε την τιμή του my_str στο πρόγραμμα.
Σε αυτό το πρόγραμμα, έχουμε λάβει μια συμβολοσειρά που είναι αποθηκευμένη στο my_str.
Χρησιμοποιώντας τη μέθοδο την casefold()
κάνουμε κατάλληλη για συγκρίσεις χωρίς λόγο. Βασικά, αυτή η μέθοδος επιστρέφει μια πεζά έκδοση της συμβολοσειράς.
Αντιστρέφουμε τη συμβολοσειρά χρησιμοποιώντας την ενσωματωμένη συνάρτηση reversed()
. Δεδομένου ότι αυτή η συνάρτηση επιστρέφει ένα αντίστροφο αντικείμενο, χρησιμοποιούμε τη list()
συνάρτηση για να τα μετατρέψουμε σε λίστα πριν από τη σύγκριση.