Karakter Dizisi İçinde Kelime Sorgulama

Merhaba. Aklıma bir şey takıldı ve ne kadar uğraşsam da beceremedim. Ben de sizlere sormak istedim. Bir karakter dizisi içindeki tek bir kelimeyi sorgulayabiliyor muyuz if, elif yapısını kullanarak? Örnek olarak:
k_d = 'bu gün hava çok sıcak'
yazdık ve eğer k_d karakter dizisinde ‘sıcak’ kelimesi geçiyorsa print(k_d) yapma gibi bir şansımız var mı? Dilimleme yöntemiyle k_d[16:] == ‘sıcak’ gibi bir şey yazabiliyorum fakat benim yapmak istediğim şeyde sıcak kelimesinin nerede olduğunu bilmiyor program. Yani ‘çok sıcak, değil mi?’ veya ‘hava ne kadar sıcak’ olabilir karakter dizisi. Bunu hesaba katarak yapmak istiyorum.

Şimdi aklıma geldi. Karakter dizisindeki cümleyi kelime kelime ayıran bir kod vardı. Fakat kod bir türlü aklıma gelmiyor. Bilen biri yardımcı olabilir mi? Ya da şöyle soruyum; karakter dizisini kelime kelime dilimlersek sıcak kelimesinin nerede olduğunu bilmediği halde onu bulabilir mi program?

BULDUM! :smiley: count() kodunu kullanarak karakter dizisinde neyin ne kadar geçtiğini bulabiliyorduk. Biraz daha düşününce geldi aklıma.

k_d = 'bu gün hava çok sıcak'
say = k_d.count('sıcak')
if(say > 0): 
    print(k_d)

Merhaba,

Bu işlem için in operatörünü kullanabilirsiniz. Bir çok farklı şekilde istediğinizi yapabilirsiniz.

string = "hava çok sıcak yahu"

if 'sıcak' in string:
    print(string)
string = "hava çok sıcak yahu"

for parca in string.split(' '):
    if parca == 'sıcak':
        print(string)

Gibi örnekler verilebilir.

1 Beğeni

O yöntemi hiç akıl edememiştim. Kod tasarrufu için kullanılabilir benim yöntemim yerine. Ayrıca 2. örnekteki .split’den bahsediyordum. Onu da hatırlattığınız için teşekkür ediyorum. :slight_smile:

1 Beğeni

string.split()
yazarsan da yine boşluklardan ayıracaktır. Saygılar.

1 Beğeni