anacrolix

Untitled

Nov 25th, 2011
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.79 KB | None | 0 0
  1. import tempfile, os
  2. f = tempfile.TemporaryFile()
  3. f.write(os.urandom(10000000))
  4. f.flush()
  5. BUFSIZE = 10000000
  6. def read():
  7.     f.seek(0)
  8.     s = b''
  9.     while True:
  10.         b = f.read(BUFSIZE)
  11.         if not b:
  12.             break
  13.         s += b
  14.     return s
  15. def bytearray_read():
  16.     f.seek(0)
  17.     s = bytearray()
  18.     while True:
  19.         b = f.read(BUFSIZE)
  20.         if not b:
  21.             break
  22.         s += b
  23.     return s
  24. ba = bytearray(os.fstat(f.fileno()).st_size)
  25. mv = memoryview(ba)
  26. def readinto():
  27.     f.seek(0)
  28.     #~ s = bytearray(os.fstat(f.fileno()).st_size)
  29.     o = 0
  30.     while True:
  31.         b = f.readinto(mv[o:o+BUFSIZE])
  32.         if not b:
  33.             break
  34.         o += b
  35.     return mv
  36. if __name__ == '__main__':
  37.     assert read() == bytearray_read() == readinto()
  38.  
  39.  
Advertisement
Add Comment
Please, Sign In to add comment