kent nyberg writes: [- -] > Well, lets assume I want to write and read binary. How is it done? [- -]
You open the file with mode "wb" (to write binary) or "rb" (to read binary), and then you write or read bytes (eight-bit units). >>> data = '"binääridataa"\n'.encode('utf-8') >>> f = open('roska.txt', 'wb') >>> f.write(data) 17 >>> f.close() The .encode methods produced a bytestring, which Python likes to display as ASCII characters where it can and in hexadecimal where it cannot: >>> data b'"bin\xc3\xa4\xc3\xa4ridataa"\n' An "octal dump" in characters (where ASCII, otherwise apparently octal) and the corresponding hexadecimal shows that it is, indeed, these bytes that ended up in the file: $ od -t cx1 roska.txt 0000000 " b i n 303 244 303 244 r i d a t a a " 22 62 69 6e c3 a4 c3 a4 72 69 64 61 74 61 61 22 0000020 \n 0a 0000021 In UTF-8, the letter 'ä' is encoded as the two bytes c3 a4 (aka 303 244, and you are welcome to work them out in binary, or even in decimal though that is less transparent when what you want to see is bits). In other encodings, there might be just one byte for that letter, and there are even encodings where the ASCII letters would be different bytes. Fixed-sized numbers (32-bit, 64-bit integers and floating point numbers have conventional representations as groups of four or eight bytes). You could interpret parts of the above text as such instead. -- https://mail.python.org/mailman/listinfo/python-list