Python program za brojanje broja svakog samoglasnika

U ovom programu naučit ćete brojati broj svakog samoglasnika u nizu pomoću razumijevanja rječnika i popisa.

Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja na Pythonu:

  • Python za Loop
  • Python žice
  • String metode

Izvorni kod: Korištenje rječnika

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

Izlaz

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

Ovdje smo uzeli niz pohranjen u ip_str. Korištenjem metode casefold()činimo je prikladnom za bezrezervne usporedbe. U osnovi, ova metoda vraća verziju niza s malim slovima.

Koristimo metodu rječnika fromkeys()za izradu novog rječnika sa svakim samoglasnikom kao ključem i svim vrijednostima jednakim 0. To je inicijalizacija brojanja.

Dalje, prelazimo preko ulaznog niza pomoću petlje for.

U svakoj iteraciji provjeravamo je li znak u ključevima rječnika ( Trueako je samoglasnik) i povećavamo vrijednost za 1 ako je true.

Izvorni kod: Korištenje popisa i razumijevanja rječnika

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

Izlaz ovog programa je isti kao gore.

Ovdje smo ugnijezdili razumijevanje popisa unutar razumijevanja rječnika kako bismo prebrojali samoglasnike u jedan redak.

Razumijevanje rječnika pokreće se za sve samoglasnike, a razumijevanje popisa unutar razumijevanja rječnika provjerava podudaraju li se bilo koji znakovi u nizu s tim samoglasnikom.

Na kraju se generira popis s 1 s za broj svakog samoglasničkog znaka. sum()Metoda se koristi za izračunavanje zbroj elemenata za svaku listu.

Međutim, ovaj je program sporiji jer ponavljamo cijeli ulazni niz za svaki samoglasnik.

Zanimljivi članci...