Steven D'Aprano wrote: > On Sat, 12 Dec 2009 10:35:55 +0100, census wrote: > >>> I've got some questions - >>> 1) How do I read the file byte by byte 2) Should I use streams? If so >>> and I get my entire scrambled text in stream can I just write it to the >>> binary file? >>> >>> Thanks >>> Dave >> >> f = open ("binaryfile", "r") >> bytearray = map (ord, f.read () ) >> >> Stores the content of binaryfile in the list bytearray. > > If it's a binary file, you should open it in binary mode: > > f = open ("binaryfile", "rb") > > >
Add the "b" flag to both in and out file if you prefer it: def scramble (a): return (a + 13) % 256 infile = open ("binin", "rb") outfile = open ("binout", "wb") bytearray = map (ord, infile.read () ) scrambled = map (scramble, bytearray) map (lambda x : outfile.write (chr (x) ), scrambled) infile.close () outfile.flush () outfile.close () -- http://mail.python.org/mailman/listinfo/python-list