LINUX.ORG.RU

История изменений

Исправление fluorite, (текущая версия) :

#!/usr/bin/python

import os, sys, re

wbuf={}
wbuflen=10000
f=open("warpeace.txt","r")

for line in f:
    for word in re.findall(r'[^\W\d]+', line):
        newword=word.lower()
        #wbuf[newword] = wbuf.get(newword,0)+1
        if newword in wbuf:
            wbuf[newword] += 1
        else:
            wbuf[newword] = 1
            if len(wbuf) >= wbuflen: pass
$ time ./warpeace.py 

real    0m0,780s
user    0m0,772s
sys     0m0,008s
time cat warpeace.txt | xargs -n1 | sort | uniq -c
real    0m0,006s
user    0m0,006s
sys     0m0,003s

Ну ты понял :)

Исходная версия fluorite, :

#!/usr/bin/python

import os, sys, re

wbuf={}
wbuflen=10000
f=open("warpeace.txt","r")

for line in f:
    for word in re.findall(r'[^\W\d]+', line):
        newword=word.lower()
        #wbuf[newword] = wbuf.get(newword,0)+1
        if newword in wbuf:
            wbuf[newword] += 1
        else:
            wbuf[newword] = 1
            if len(wbuf) >= wbuflen: pass
$ time ./warpeace.py 

real    0m0,780s
user    0m0,772s
sys     0m0,008s
time cat filename | xargs -n1 | sort | uniq -c
real    0m0,006s
user    0m0,006s
sys     0m0,003s

Ну ты понял :)