Bir Metinde Her Harfin Kaç Kere Geçtiğini Gösteren Program

Metinde herhangi bir harfin kaç kere geçtiği kolayca belirleniyor ama metinde gecen her bir harfin toplam kaç kere geçtiğini for yada while döngüsüyle nasıl belirleyebilirim. Yardımlarınız için teşekkür ederim.

metin = """Bu programlama dili Guido Van Rossum adlı Hollandalı bir programcı
tarafından 90’lı yılların başında geliştirilmeye başlanmıştır. Çoğu insan,
isminin Python olmasına aldanarak, bu programlama dilinin, adını piton
yılanından aldığını düşünür. Ancak zannedildiğinin aksine bu programlama dilinin
adı piton yılanından gelmez. Guido Van Rossum bu programlama dilini, The Monty
Python adlı bir İngiliz komedi grubunun, Monty Python’s Flying Circus adlı
gösterisinden esinlenerek adlandırmıştır. Ancak her ne kadar gerçek böyle olsa
da, Python programlama dilinin pek çok yerde bir yılan figürü ile temsil
edilmesi neredeyse bir gelenek halini almıştır."""

harf = input("Sayilmasi istenen harfi giriniz : ")
print(metin.count(harf))


karakter = ""
sayi = 0

for i in metin:
    if i not in karakter:
        karakter += i
        
print(karakter)
text = """Bu programlama dili Guido Van Rossum adlı Hollandalı bir programcı
tarafından 90’lı yılların başında geliştirilmeye başlanmıştır. Çoğu insan,
isminin Python olmasına aldanarak, bu programlama dilinin, adını piton
yılanından aldığını düşünür. Ancak zannedildiğinin aksine bu programlama dilinin
adı piton yılanından gelmez. Guido Van Rossum bu programlama dilini, The Monty
Python adlı bir İngiliz komedi grubunun, Monty Python’s Flying Circus adlı
gösterisinden esinlenerek adlandırmıştır. Ancak her ne kadar gerçek böyle olsa
da, Python programlama dilinin pek çok yerde bir yılan figürü ile temsil
edilmesi neredeyse bir gelenek halini almıştır."""

chars = dict()

for char in text:
    try:
        chars[char]
    except KeyError:
        chars[char] = 1
    else:
        chars[char] += 1

for char, n in chars.items():
    print(f"{repr(char)} karakteri metinde {n} kere tekrar eder.")

Başka bir yontem:

# Sosyal mesafe XD
text = """


eee


bb


rrrrrrr


dddddd


DDDD


"""

chars = dict()


_text = set(text)


for char in _text:


    chars[char] = text.count(char)


for char, n in chars.items():


    print(f"{repr(char)} karakteri metinde {n} kere tekrar eder.")
2 Beğeni

Bende az daha kafayı kırıyordum neden yapamadım diye çok şükür daha öğrenmediğim konular lazımmış meğer. :smiley: :smiley: :smiley: Çok teşekkür ederim.

1 Beğeni

kodda bile mi :rofl: doğru generator objeleri geçen öksürüyordu :rofl:

1 Beğeni

Metni str.split ile kelimelerine ayırıp bu yöntemi de kullanabiliriz:

@reo’in verdiği ilk örnek güzel ama ikinci örnek verimsiz çalışıyor, kullanılmamalı.

1 Beğeni

Ekrem bey split ile elemanlarina ayirmistim ama ben harfleri saydirmak istedigimden daha otesine gidemedim . Bu yontemi gostermenizde iyi oldu tesekkur ederim.

1 Beğeni

Cevabı yazarken kafam karışmış, harflerin kaç defa geçtiğini öğrenmek için linkteki yöntemi direkt uygulayabiliriz. str.splite gerek yok.

Ozur dilerim ekrem bey hangi linkteki yontemi isaret ettiginizi anlayamadim.

@EkremDincel şundan bahsediyor:

1 Beğeni