Harijs Poters un filozofu akmens
Mērķis: apgūt teksta faila apstrādi Python programmēšanas valodā, izmantojot vārdnīcas (dict), ciklus un teksta virkņu metodes.
Vārdu biežuma noteikšana
Izveido Python programmu, kas nolasa failu Harry_Potter_Philosophers_Stone.txt un saskaita, cik reižu katrs vārds sastopams tekstā.
- Izmanto vārdnīcu, kuras atslēgas ir vārdi, bet vērtības — to sastopamības reižu skaits.
- Pirms skaitīšanas pārveido visus vārdus mazajos burtos.
- Izvada 10 biežāk sastopamos vārdus un to skaitu.
Personāžu vārdu statistika
Izveido vārdnīcu ar vismaz piecu grāmatas varoņu vārdiem, piemēram, Harry, Ron, Hermione, Hagrid un Dumbledore.
- Saskaiti, cik reižu katra personāža vārds minēts tekstā.
- Sakārto rezultātus pēc sastopamības biežuma dilstošā secībā.
- Nosaki, kurš no izvēlētajiem varoņiem tekstā minēts visbiežāk.
Noteiktu frāžu meklēšana
Izveido programmu, kas saskaita, cik reižu tekstā sastopamas šādas frāzes:
Harry Potter
Hogwarts
Philosopher's Stone
Professor Dumbledore
Prasības:
- Izmanto vārdnīcu, kur katrai frāzei atbilst tās sastopamības reižu skaits.
- Meklēšanu veic, neņemot vērā lielos un mazos burtus.
- Izvada katras frāzes nosaukumu un skaitu.
Vārdu garuma analīze
Izveido programmu, kas nosaka, cik reižu tekstā sastopami dažāda garuma vārdi.
- Izmanto vārdnīcu, kur atslēga ir vārda garums, bet vērtība — šāda garuma vārdu skaits.
- Ieskaiti tikai vārdus, kuros ir vismaz viens burts.
- Izvada rezultātus, piemēram, cik tekstā ir 3, 4, 5 un citu garumu vārdu.
- Nosaki, kāds ir visbiežāk sastopamais vārda garums.
Atslēgvārdu analīze
Izveido programmu, kas analizē ar maģiju un skolu saistītus vārdus: magic, wand, spell, school, wizard un witch.
- Izveido vārdnīcu, kur katram atslēgvārdam tiek saglabāts tā sastopamības reižu skaits.
- Aprēķini, cik reižu visi izvēlētie atslēgvārdi kopā sastopami tekstā.
- Nosaki trīs biežāk sastopamos atslēgvārdus.
- Izvada rezultātus pārskatāmā tabulā vai sarakstā.
Vispārīgās prasības
- Failu nolasa, izmantojot
open() un encoding="utf-8". Svarīgi failu arī aizvērt, lai nepiesārņojas atmiņa, vai izmantot pierakstu with open(...) as ...
- Vārdnīcu izveido un papildina programmas izpildes laikā.
- Izmanto
for ciklu un vārdnīcas metodes, piemēram, get() un items().
- Rezultātus izvada ar saprotamiem paziņojumiem.
- Vārdu skaitīšanā ņem vērā lielos un mazos burtus, pieturzīmes un pilnu vārdu robežas.
🌟 Papildu izaicinājums: izveido funkciju, kas saņem teksta faila nosaukumu un atgriež vārdnīcu ar aprēķinātajiem rezultātiem.
Piemērs:
def check_whole_book(what_book):
...
# Do something....
# Do What?! 🤔