On 5 Jun 2012, at 11:18, Moritz Klammler wrote: > Hello, > > in Python 3, this is a TypeError: > >>>> sys.stdout.write(b"hello, world\n") > > At the moment, argparse.FileType.__call__("-") unconditionally returns > sys.stdout even if mode is binary so writing binary data will fail if > the user selects to write it to stdout. > > I'm not sure if this is the best possible solution but at least the > following patch to argparse.py would fix the aforementioned problem.
Please post patches to the bug tracker so they don't get lost. http://bugs.python.org All the best, Michael Foord > > Moritz > > > 1154c1154,1157 > < return _sys.stdin > --- >> if 'b' in self._mode: >> return _sys.stdin.buffer >> else: >> return _sys.stdin > 1156c1159,1162 > < return _sys.stdout > --- >> if 'b' in self._mode: >> return _sys.stdout.buffer >> else: >> return _sys.stdout > > -- > Fingerprint: 80C1 EC79 B554 3D84 0A35 A728 7057 B288 CE61 2235 > Public key: http://openpgp.klammler.eu > _______________________________________________ > stdlib-sig mailing list > stdlib-sig@python.org > http://mail.python.org/mailman/listinfo/stdlib-sig -- http://www.voidspace.org.uk/ May you do good and not evil May you find forgiveness for yourself and forgive others May you share freely, never taking more than you give. -- the sqlite blessing http://www.sqlite.org/different.html _______________________________________________ stdlib-sig mailing list stdlib-sig@python.org http://mail.python.org/mailman/listinfo/stdlib-sig