Exemple #1
0
def markers(fileOut: str, markerColor: str,
            ubicaciones: list[Coordenadas2D]) -> None:
    center = Coordenadas2D.center(ubicaciones)
    result = getMarkersPattern()
    ub = (toMarker(markerColor, "E", x) for x in ubicaciones)
    markersText = str_iterable(ub, "\n", "\n", "\n")
    centerMarkerText = toMarker("red", "C", center)
    centerText = toPoint(center)
    keyText = getKey()
    reglas = {}
    reglas["center"] = centerText
    reglas["markercenter"] = centerMarkerText
    reglas["markers"] = markersText
    reglas["key"] = keyText
    result = String.transform(result, reglas)
    File.write(fileOut, result)
Exemple #2
0
def polyline(fileOut: str, ubicaciones: list[Coordenadas2D]) -> None:
    center = Coordenadas2D.center(ubicaciones)
    result = getPolylinePattern()
    ub = (toPoint(x) for x in ubicaciones)
    polylineText = str_iterable(ub, ",\n", "\n[", "]\n")
    centerText = toPoint(center)
    markerCenterText = toMarker("red", "C", center)
    markerBeginText = toMarker("red", "S", ubicaciones[0])
    markerEndText = toMarker("red", "E", ubicaciones[-1])
    keyText = getKey()
    reglas = {}
    reglas["center"] = centerText
    reglas["markerbegin"] = markerBeginText
    reglas["markerend"] = markerEndText
    reglas["markercenter"] = markerCenterText
    reglas["polyline"] = polylineText
    reglas["key"] = keyText
    result = String.transform(result, reglas)
    File.write(fileOut, result)
Exemple #3
0
 def __str__(self) -> str:
     return str_iterable(self._estaciones,
                         sep='\n',
                         prefix='Estaciones\n',
                         suffix='\n---------------------')
Exemple #4
0
 def __str__(self) -> str:
     it1 = str_iterable(self.palabras_huecas)
     it2 = str_iterable(self.mensajes, separator='\n', prefix='', suffix='')
     return 'Palabras huecas = \n{0:s}\nMensajes = \n{1:s}'.format(it1, it2)
Exemple #5
0
    def diagrama_de_tarta_mensajes_por_dia_de_semana(self,
                                                     file_out: str) -> None:
        ls = [x for x in self.numero_de_mensajes_por_dia_de_semana.items()]
        ls.sort(key=lambda e: e[0])
        nombres_columna = [week_days[x[0]] for x in ls]
        datos = [x[1] for x in ls]
        nombres_datos = ['DiaDeSemana', 'NumeroDeMensajes']
        Graphics.pieChart(file_out, "MensajesPorDiaDeSemana", nombres_datos,
                          nombres_columna, datos)


if __name__ == '__main__':
    c = Conversacion.data_of_file(
        absolute_path("/resources/bigbangtheory_es.txt"))
    #    print(c)
    print(str_iterable(c.numero_de_mensajes_por_usuario.items()))
    tsf = lambda e: '{0:s}={1}'.format(e[0], e[1])
    print(
        str_iterable(c.numero_de_palabras_por_usuario.items(),
                     ts=tsf,
                     sep='\n',
                     prefix='',
                     suffix=''))
    print(
        str_iterable(c.numero_de_palabras_por_resto_de_usuarios.items(),
                     ts=tsf,
                     sep='\n',
                     prefix='',
                     suffix=''))
    print(c.numero_de_palabras_por_resto_de_usuarios['Leonard'])
    #    c.diagrama_de_barras_mensajes_por_dia_de_semana("../../../ficheros/por_dia_de_semana_barras.html")
Exemple #6
0
    d = invert_dict_set(frecuencias_de_palabras(file))
    return OrderedDict(sorted(d.items(), key=lambda t: t[0]))


def palabra_en_lineas(file: str) -> OrderedDict[str, set[int]]:
    lns = lineas_de_fichero(file, encoding='utf-16')
    palabras = ((i, p) for i, linea in enumerate(lns)
                for p in re.split(sep, linea) if len(p) > 0)
    d = grouping_set(palabras, fkey=lambda e: e[1], fvalue=lambda e: e[0])
    return OrderedDict(sorted(d.items(), key=lambda t: t[0]))


def palabras_frecuentes(file: str, k: int) -> str:
    return Counter(palabras_no_huecas(file)).most_common(k)


if __name__ == '__main__':
    print(encoding("../../../resources/quijote.txt"))
    #    print(str_iterable(palabras_no_huecas("../../../resources/quijote.txt"),sep='\n'))
    #    print(str_dictionary(palabras_por_frecuencias("../../../resources/quijote.txt"),sep='\n'))
    #    print(numero_de_palabras_distintas_no_huecas("../../../resources/quijote.txt"))
    #    print(str_iterable(palabras_por_frecuencias("../../../resources/quijote.txt").items(),sep='\n',pf='',sf=''))
    print(
        str_iterable(
            palabra_en_lineas("../../../resources/quijote.txt").items(),
            sep='\n',
            prefix='',
            suffix=''))
    #    print(palabras_frecuentes("../../../resources/quijote.txt"))
    print(palabras_frecuentes("../../../resources/quijote.txt", 10))
Exemple #7
0
'''
Created on 24 nov 2021

@author: migueltoro
'''

from us.lsi.tools.Iterable import str_iterable
import sys

if __name__ == '__main__':
    print(str_iterable(sys.path,sep='\n'))
Exemple #8
0
        return not (self == other)
    
    def __lt__(self, other)->bool:
        return self._numerador*other._denominador < self._denominador*other._numerador
    
    def __hash__(self)->int:
        return  hash(self._numerador)*31 + hash(self._denominador)
    
    def __str__(self)->str:
        if self._denominador == 1:
            return '{0:d}'.format(self._numerador)
        else:
            return '{0:d}/{1:d}'.format(self._numerador,self._denominador)

if __name__ == '__main__':
    f1 = Fraccion.of(3)
    print('1:',f1.numerador)
    print('2:',f1.denominador)
    f2 = Fraccion.of(3, 6)
    print('3:',f1 >= f2)
    f3 = Fraccion.of(2, -12)
    print(f3)
    f3.set_denominador(10)
    print('4:',f3+f2)
    print('5:',f3-f2)
    print('6:',f3*f2)
    print('7:',f3/f2)
    print('8:',-f3/f2)
    ls = (Fraccion.random(1000) for _ in range(50))
    print('9:',str_iterable(ls))