В Python 2.x с файловым объектом:
sys.stdout.write(bytes_)
tempfile.TemporaryFile().write(bytes_)
open('filename', 'wb').write(bytes_)
StringIO().write(bytes_)
Как сделать то же самое в Python 3?
Как написать эквивалент этого кода Python 2.x:
def write(file_, bytes_):
file_.write(bytes_)
Примечание. sys.stdout
не всегда семантически текстовый поток. Возможно, было бы полезно рассматривать его как поток байтов. Например, сделать зашифрованный архив dir/на удаленном компьютере:
tar -c dir/ | gzip | gpg -c | ssh [email protected] 'dd of=dir.tar.gz.gpg'
В этом случае нет смысла использовать Unicode.