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
| import re
from time import clock
patmol = re.compile('molec(?:ules|ular\s+types)\s+(\d+)')
a,b,c,d = [],[],[],[]
for i in xrange(4):
f = open('molecul.txt')
te =clock()
for ln in f:
x = patmol.search(ln).group(1)
tf = clock()
f.close()
print tf-te,
a.append(tf-te)
f = open('molecul.txt')
te =clock()
for ln in f:
if 'molecules' in ln or 'molecular tyeps' in ln:
x = ln[:-1].split()[-1]
tf = clock()
f.close()
print tf-te,
b.append(tf-te)
f = open('molecul.txt')
te =clock()
for ln in f:
x = ln[ln.rfind('es ')+3:-1]
tf = clock()
f.close()
print tf-te,
c.append(tf-te)
f = open('molecul.txt')
te =clock()
for ln in f:
x = ln[:-1].rpartition(' ')[2]
tf = clock()
f.close()
print tf-te
d.append(tf-te)
print
ma = sum(a)/len(a)
mb = sum(b)/len(b)
mc = sum(c)/len(c)
md = sum(d)/len(d)
print 'regex ',ma
print 'split ',mb,' ',str(mb/ma*100)[0:5],'% de '+str(ma)
print 'rfind ',mc,' ',str(mc/ma*100)[0:5],'% de '+str(ma)
print 'rpartition ',md,' ',str(md/ma*100)[0:5],'% de '+str(ma) |
Partager