Program Python pro počítání počtu každé samohlásky

V tomto programu se naučíte počítat počet jednotlivých samohlásek v řetězci pomocí slovníku a porozumění seznamu.

Abychom porozuměli tomuto příkladu, měli byste znát následující témata programování v Pythonu:

  • Python pro smyčku
  • Pythonové řetězce
  • Řetězcové metody

Zdrojový kód: Používání slovníku

 # Program to count the number of each vowels # string of vowels vowels = 'aeiou' ip_str = 'Hello, have you tried our tutorial section yet?' # make it suitable for caseless comparisions ip_str = ip_str.casefold() # make a dictionary with each vowel a key and value 0 count = ().fromkeys(vowels,0) # count the vowels for char in ip_str: if char in count: count(char) += 1 print(count) 

Výstup

 ('o': 5, 'i': 3, 'a': 2, 'e': 5, 'u': 3) 

Zde jsme vzali řetězec uložený v ip_str. Pomocí této metody casefold()je vhodná pro bezkonkurenční srovnání. V zásadě tato metoda vrací verzi řetězce s malými písmeny.

Metodu slovníku používáme fromkeys()ke konstrukci nového slovníku s každou samohláskou jako jejím klíčem a všemi hodnotami rovnými 0. Toto je inicializace počtu.

Dále iterujeme vstupní řetězec pomocí smyčky for.

V každé iteraci zkontrolujeme, zda je znak v klíčích slovníku (je- Trueli to samohláska), a zvýšíme hodnotu o 1, pokud je to pravda.

Zdrojový kód: Použití seznamu a výkladového slovníku

 # Using dictionary and list comprehension ip_str = 'Hello, have you tried our tutorial section yet?' # make it suitable for caseless comparisions ip_str = ip_str.casefold() # count the vowels count = (x:sum((1 for char in ip_str if char == x)) for x in 'aeiou') print(count) 

Výstup z tohoto programu je stejný jak je uvedeno výše.

Zde jsme vnořili porozumění seznamu do slovníku, abychom spočítali samohlásky v jednom řádku.

Porozumění slovníku běží pro všechny znaky samohlásky a porozumění seznamu uvnitř slovníku s porozuměním zkontroluje, zda se nějaké znaky v řetězci shodují s konkrétní samohláskou.

Na konci je vygenerován seznam s 1 s pro číslo každého znaku samohlásky. sum()Metoda se používá pro výpočet součtu prvků pro každý seznam.

Tento program je však pomalejší, protože procházíme celým vstupním řetězcem pro každou samohlásku.

Zajímavé články...