sys.stdout.detach() results in ValueError

Peter Kleiweg pkleiweg at
Wed Mar 7 20:41:46 CET 2012

I want to write out some binary data to stdout in Python3. I 
thought the way to do this was to call detach on sys.stdout. But 
apparently, you can't. Here is a minimal script:

    #!/usr/bin/env python3.1
    import sys
    fp = sys.stdout.detach()

Not yet using fp in any way, this script gives the following error:

    Exception ValueError: 'underlying buffer has been detached' in

Same in Python 3.1.4 and Python 3.2.2

So, what do I do if I want to send binary data to stdout? 

Peter Kleiweg

More information about the Python-list mailing list