-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcoh_piah.py
75 lines (58 loc) · 1.52 KB
/
coh_piah.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import re
def le_assinatura():
print("Bem-vindo ao detector automático de COH-PIAH.")
wal = float(input("Entre o tamanho medio e palavra:"))
ttr = float(input("Entre a relação Type-Token:"))
hlr = float(input("Entre a Razão Hapax Legomana"))
sal = float(input("Entre o tamanho médio de sentença:"))
sac = float(input("Entre a complexidade média da sentença:"))
pal = float(input("Entre tamanho medio de frase:"))
return [wal, ttr, hlr, sal, sac, pal]
def le_textos():
i = 1
textos = []
texto = input("Digite o texto " + str(i) + "(aperte enter para sair):")
while texto:
textos.append(texto)
i += 1
texto = input("Digite o texto " + str(i) + "(aperte enter para sair):")
return textos
def separa_sentencas(texto):
sentencas = re.split(r'[.!?]+', texto)
if sentencas[-1] == '':
del sentencas[-1]
return sentencas
def separa_frases(sentenca):
return re.split(r'[,:;]+', sentenca)
def separa_palavras(frase):
return frase.split()
def n_palavras_unicas(lista_palavras):
freq = dict()
unicas = 0
for palavra in lista_palavras:
p = palavra.lower()
if p in freq:
if freq[p] == 1:
unicas -= 1
freq[p] += 1
else:
freq[p] = 1
unicas += 1
return unicas
def n_palavras_diferentes(lista_palavras):
freq = dict()
for palavra in lista_palavras:
p = palavra.lower()
if p in freq:
freq[p] += 1
else:
freq[p] = 1
return len(freq)
def compara_assinatura(as_a, as_b):
pass
def calcula_assiatura(texto):
pass
def avalia_textos(textos, ass_cp):
pass
a = le_assinatura()
b = le_textos()