-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathutilities.py
69 lines (49 loc) · 1.92 KB
/
utilities.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
# -*- coding: utf-8 -*-
'''
Módulo de utilidades
Incluye múltiples métodos auxiliares utilizados por el sistema.
También incluye la configuración compartida por parte del sistema implementado.
'''
'''
Valores predeterminados de configuración del sistema
'''
configuration=dict()
configuration['configuration_file']=''
configuration['threshold_value']=
configuration['kw_threshold_value']={}
configuration['default_threshold']=
configuration['min_text_size']=
'''
Lee el contenido de un fichero y lo devuelve.
Input:
-filename: String. Ubicación del fichero a leer.
-encoding: String. Codificación utilizada en la lectura.
Output:
-String. Contenido del fichero.
'''
def read_file(filename, encoding='latin-1'):
with open(filename, "r", encoding=encoding) as myfile:
return myfile.read()
'''
Lee los criterios (y subcriterios) asociados a un fichero de criterios.
Input:
-filepath: String. Ubicación/nombre del fichero de criterios.
-encoding: String. Codificación utilizada en la lectura.
Output:
-Dict. Diccionario cuyas claves son los criterios leídos y los valores listas con los subcriterios asociados a cada criterio.
'''
def read_criteria(filepath, encoding='latin-1'):
result={} #Diccionario en el que se volcarán los resultados.
#Leemos la totalidad del texto.
text=read_file(filepath, encoding=encoding)
text=text.split('--')[1:] #Eliminamos el elemento vacío que se ubica en la primera posición.
#Para cada criterio, obtenemos los subcriterios/palabras clave e insertamos
#lo obtenido en el diccionario resultante.
for x in text:
tmp=x.split('**')
key=tmp[0].strip('\n')
values=list()
for y in tmp[1:]:
values.append(y.strip('\n'))
result[key]=values
return result