PASTE-IT!

Holding 564M in 37705 pastes. Meet us at #paste-it.net, OFTC!
Try our Mozilla Jetpack clipboard paster and our Chrome extension!
 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
76
import sys
import random
import time

def buscar_coincidencias(palabras, cadena):
    # creo una lista vacia
    coincidencias = []
    # recorro la lista de palabras
    for palabra in palabras:
        # pregunto si empieza con la cadena
        if palabra.startswith(cadena):
            # si empieza con esta cadena
            # la agrego a la lista de coincidenas
            coincidencias.append(palabra)
    return coincidencias

def buscar_palabras_aleatoreas(palabras_diccionario):
    # busco palabras de mas de 7
    # caracteres cada una y obtengo
    # solo los primeros 5
    palabras = [p[:-2] for p in palabras_diccionario if len(p)>7]
    palabras = [random.choice(palabras)[:5] for x in xrange(CANT)]
    return palabras

if __name__ == "__main__":
    # guardo el tiempo inicial del comienzo
    # del programa
    tiempo_inicial_total = time.time()

    # creo una lista vacia
    palabras_diccionario = []
    # direccion del diccionario plano
    # (posee una palabra por linea)
    diccionario = "diccionariocs.txt"

    # guardo el tiempo inicial de la carga
    # del diccionario de palabras
    tiempo_inicial_carga = time.time()
    # recorro todo el archivo linea
    # por linea
    for linea in open(diccionario, "r"):
        # cada linea al final tienen "\r\t"
        # asique elimino esos caracteres
        linea = linea[:-2]
        # agrego la palabra a la lista de
        # palabras
        palabras_diccionario.append(linea)
    # hago la resta entre el tiempo actual y
    # el inicial antes de empezar la carga
    print "En cargar: %.2f seg" % (time.time() - tiempo_inicial_carga)

    # controlo que el usuario halla pasado
    # la cadena a buscar, de lo contrario
    # hago una busqueda aleatorea
    if len(sys.argv) == 2:
        # obtengo la cadena de busqueda
        cadenas = [sys.argv[1]]
        # seteo la cantidad de cadenas
        # a buscar de forma aleatoria
        CANT = 1
    else:
        # seteo la cantidad de cadenas
        # a buscar de forma aleatoria
        CANT = 50
        cadenas = buscar_palabras_aleatoreas(palabras_diccionario)

    print "Cantidad de palabras a buscar:", CANT

    # guardo el tiempo inicial de
    # en la busqueda de cada una de
    # las palabras obtenidas
    # aleatoriamente
    tiempo_inicial_busqueda = time.time()
    for cadena in cadenas:
        buscar_coincidencias(palabras_diccionario, cadena)
    print "Busq x palabra: %.2f mseg" % (1000 * (time.time()-tiempo_inicial_busqueda) / CANT)
Paste by
humitos,
854 day(s) ago
22:11 09-11-2007
in syntax