В модуле ftplib есть такая функция:
retrlines(self, cmd, callback=None) unbound ftplib.FTP method
Retrieve data in line mode. A new port is created for you.
Args:
cmd: A RETR, LIST, NLST, or MLSD command.
callback: An optional single parameter callable that is called
for each line with the trailing CRLF stripped.
[default: print_line()]
Returns:
The response code.
Как можно передать ей такой callback, чтобы написать
def ftplines(ftp, filename):
. . .
callback = . . .
ftp.retrlines("RETR " + filename, callback)
for l in ftplines(ftp, "/etc/shadow"):
. . .
т. е., заставить результат работать как генератор?
14.07.09 17:19: Перенесено из 'Декларативное программирование'