Копирование потока в Python

#python #io

#python #io

Вопрос:

Как мне перенести содержимое потока в другой на Python?

Тривиальным решением было бы

 output.write(input.read())
  

но это не удается, если размер входного файла превышает объем доступной памяти (или даже бесконечно большой); и это плохо работает, когда также полезно частичное копирование. В основном я ищу эквивалент org.apache.commons.IOUtils.copy .

Ответ №1:

shutil.copyfile и shutil.copyfileobj для спасения. Смотрите http://docs.python.org/library/shutil.html#module-shutil

Комментарии:

1. В частности, shutil.copyfileobj . Я посмотрел в shutil, но почему-то этого не увидел. Спасибо!

2. к сожалению, он не может скопировать поток байтов paramiko, несмотря на наличие файлового интерфейса 😢