on 9c3ebdd help sign in
text/tests/benchmarks/fileread.py
41 lines 754 B history raw
1#!/usr/bin/env python
3import sys
5def string(name):
6 print len(open(name).read())
8def lazystring(name):
9 fp = open(name)
10 n = 0
11 d = True
12 bs = 128 * 1024
13 read = fp.read
14 while d:
15 d = len(read(bs))
16 n += d
17 print n
19def lazytext(name):
20 fp = open(name)
21 n = 0
22 d = True
23 bs = 128 * 1024
24 read = fp.read
25 while d:
26 s = read(bs)
27 d = len(s.decode('utf-8', 'replace'))
28 n += d
29 print n
31def text(name):
32 print len(open(name).read().decode('utf-8', 'replace'))
34if sys.argv[1] == 'bs':
35 string(sys.argv[2])
36if sys.argv[1] == 'lbs':
37 lazystring(sys.argv[2])
38elif sys.argv[1] == 'lazytext':
39 lazytext(sys.argv[2])
40elif sys.argv[1] == 'text':
41 text(sys.argv[2])