str
'yi bir sayı grubuna dönüştürüp, bu sayı grubunu karşılaştırabilirsiniz. İşlem açısından daha az zorlayıcı olacaktır.
Yani aşağıdaki a
'yı;
a = "elma"
şöyle temsil edebilirsiniz.
a_temsil = (5, 14, 15, 0)
b
de elme
olsun.
b = "elme"
b
'yi de şöyle temsil edebiliriz:
b_temsil = (5, 14, 15, 5)
Şimdi, a_temsil
mi yoksa b_temsil
mi küçük sorgusu yapabiliriz.
a = "elma"
a_temsil = (5, 14, 15, 0)
b = "elme"
b_temsil = (5, 14, 15, 5)
if a_temsil > b_temsil:
print(f"Küçükten büyüğe sıralamada {b}, {a}'dan önce gelmeli.")
else:
print(f"Küçükten büyüğe sıralamada {a}, {b}'dan önce gelmeli.")
Yukardaki sorgunun sonucunda, Küçükten büyüğe sıralamada elma, elme'dan önce gelmeli.
yazısı ekrana yazdırılır.
Özetle, <
ve >
operatörlerini list
, tuple
ve str
gibi dizilerde kullanabilirsiniz:
Örnek:
print('1.2, 1' > '1.2, 0, 335')
Demek ki burada büyüklük sorgusu str
'nin uzunluğuna göre yapılmıyor, str
'nin içindeki sayıların büyüklüğüne göre yapılıyor.
Aynı durum diğer iterable
yani seri olan, indekselenebilir veri tipleri için de geçerli.
Bu, bizim ne işimize yarar? int > int
gibi bir sorgu yapmak yerine iterable > iterable
sorgusu yaparak da hangi değerin önce gelmesi gerektiğini bulabiliriz.