Python ile Palindrome Kontrolünü Kodlama
Bu yazımızda Python ile palindrome kontrol eden örnek bir algoritma kodlayacağız.
Python ile Palindrome
Öncelikle palindrome ne olduğunu açıklayalım; Palindrom, tersten okunuşu da aynı olan cümle, sözcük ve sayılara denilmektedir. Biz kodumuzda kullanıcıdan alınan kelime, cümle veya sayının palindrom olup olmadığını kontrol edeceğiz. Bu kontrolü if-else ve fonksiyonlar kullanarak yaptık.
def is_palindrome(s):
if s.isdigit():
s = str(s)
s = s.lower()
s = s.replace(" ", "")
return s == s[::-1]
input_ = input("Bir sayı, kelime veya cümle giriniz: ")
if is_palindrome(input_):
print("Girilen değer bir Palindrome.")
else:
print("Girilen değer bir Palindrome değil.")
Bu algoritma, kullanıcının girdiği değeri türüne göre kontrol eder. Eğer kullanıcı sayısal bir değer girerse, o sayıyı string olarak dönüştürür ve kontrol eder. Örneğin, “121” girdiğinde “Girilen değer bir Palindrome.” mesajını verir.
Eğer kullanıcı kelime veya cümle girerse, büyük-küçük harf ayrımı yapmaz, boşlukları dikkate almaz ve kontrol eder. Örneğin “madam” girdiğinde “Girilen değer bir Palindrome.” mesajını verir.
Python’da isdigit() metodu tüm karakterler rakamsa True döndürür eğer rakam harici bir diğer varsa False döndürür.
n[::-1] işlemi dikkatinizi çekmiş olabilir. Bu ifade her bir öğeyi ilk alarak sondakini başa alarak sondan başa doğru saymaya başlar. Yani n ifadesini tam tersine çevirir.