Faili statistika (iti0140): erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
Resümee puudub
Resümee puudub
 
(ei näidata sama kasutaja 3 vahepealset redaktsiooni)
5. rida: 5. rida:
== Ülesanne ==  
== Ülesanne ==  


Kirjuta programm, mis loeb kokku kõik faili carcosa.txt tähemärgid ja esitab need esinemise sageduse järjekorras. Näiteks kui sisendfail oleks:
Kirjuta programm, mis loeb kokku kõik faili [[Media:carcosa.txt|carcosa.txt]] tähemärgid ja esitab need esinemise sageduse järjekorras. Näiteks kui sisendfail oleks:
  aa aa, a
  aa aa, a
  Bbb
  Bbb
21. rida: 21. rida:
  aa: 2
  aa: 2
  a: 1
  a: 1
  Bbb: 1
  bbb: 1
  c: 2
  cc: 1


== Vihjeid ==
== Vihjeid ==


* Andmetüüp dict
* Andmetüüp dict:
** Kõik indeksid:
# Tühi dict:
  dict.keys()
d = {}
** Kõik väärtused:
# Kõik indeksid:
  dict.values()
  d.keys()
* Suurtähtedest vabanemiseks võib abiks olla stringi meetod .isalpha()
# Kõik väärtused:
  d.values()
* Suurtähtedest vabanemiseks võib abiks olla stringi meetod .lower()
* Stringi jaotamisel sõnadeks võib abiks olla meetod .split()
* Stringi jaotamisel sõnadeks võib abiks olla meetod .split()
* Kontrollimaks kas string/täht koosneb tähestiku tähtedest sobib .isalpha() meetod.
* Kontrollimaks kas string/täht koosneb tähestiku tähtedest sobib .isalpha() meetod.
* Sorteerimiseks on funktsioon sorted(), kuigi kindlasti tasub õppida ka "käsitsi" sorteerima.
* Sorteerimiseks on funktsioon sorted(), kuigi kindlasti tasub õppida ka "käsitsi" sorteerima.

Viimane redaktsioon: 27. september 2013, kell 16:14

Ülesandeks on kirjutada programm, mis esitab faili tähesagedusstatistika ning faili 10 kõige sagedamini esinevat sõna

Statistika arvutamiseks kasutame Ambrose Pierce'i lühijuttu "An Inhabitant of Carcosa", mille autoriõigused on aegunud tänu sellele, et tekst on vanem kui Miki Hiir.

Ülesanne

Kirjuta programm, mis loeb kokku kõik faili carcosa.txt tähemärgid ja esitab need esinemise sageduse järjekorras. Näiteks kui sisendfail oleks:

aa aa, a
Bbb
cc.

Oleks väljund:

a: 5
b: 3
c: 2 

Täienda seda programmi nii, et loetaks kokku kõigi faili sõnade esinemissagedus; näidake 10 kõige sagedamini esinevat sõna (viigid esitage tähestikuliselt). Eelneva näitel oleks väljund:

a: 5
b: 3
c: 2

aa: 2
a: 1
bbb: 1
cc: 1

Vihjeid

  • Andmetüüp dict:
# Tühi dict:
d = {}
# Kõik indeksid:
d.keys()
# Kõik väärtused:
d.values()
  • Suurtähtedest vabanemiseks võib abiks olla stringi meetod .lower()
  • Stringi jaotamisel sõnadeks võib abiks olla meetod .split()
  • Kontrollimaks kas string/täht koosneb tähestiku tähtedest sobib .isalpha() meetod.
  • Sorteerimiseks on funktsioon sorted(), kuigi kindlasti tasub õppida ka "käsitsi" sorteerima.