„Python“ programa kiekvieno balsio skaičiui suskaičiuoti

Šioje programoje išmoksite suskaičiuoti kiekvieno eilutės balsių skaičių naudodami žodyną ir suprasdami sąrašą.

Norėdami suprasti šį pavyzdį, turite žinoti apie šias „Python“ programavimo temas:

  • „Python for Loop“
  • „Python“ eilutės
  • Styginių metodai

Šaltinio kodas: naudojant žodyną

 # 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) 

Rezultatas

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

Čia mes paėmėme eilutę, saugomą ip_str. Naudodami metodą casefold(), mes padarome jį tinkamą palyginimui be bevielio ryšio. Iš esmės šis metodas pateikia žemesnės eilutės eilutės versiją.

Mes naudojame žodyno metodą, fromkeys()kad sukurtume naują žodyną, kurio kiekvienas balsis yra raktas ir visos vertės yra lygios 0. Tai yra skaičiavimo inicijavimas.

Toliau kartojame įvesties eilutę naudodami „for loop“.

Kiekvienoje iteracijoje patikriname, ar simbolis yra žodyno klavišuose ( Truejei tai yra balsis) ir padidiname vertę 1, jei teisinga.

Šaltinio kodas: Sąrašo ir žodyno supratimo naudojimas

 # 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) 

Šios programos išvestis yra tokia pati kaip aukščiau.

Čia mes įdėjome sąrašo supratimą žodyno supratimo viduje, kad balsiai būtų skaičiuojami vienoje eilutėje.

Žodyno supratimas vykdomas visiems balsių simboliams, o sąrašo supratimas žodyno supratimo viduje tikrina, ar kokie nors eilutės simboliai atitinka tą patį balsį.

Pabaigoje sukuriamas 1 balso sąrašas kiekvieno balsio simbolio skaičiui. sum()Metodas yra naudojamas apskaičiuoti iš kiekvieno sąrašo elementų sumą.

Tačiau ši programa yra lėtesnė, nes kartojame visą įvesties eilutę kiekvienam balsiui.

Įdomios straipsniai...