我试图真正理解这行python中发生了什么,以使其将传入数据拉至字符串,而不是将其写入输出文件。
ftp.retrlines("RETR " + filename, lambda s, w=outfile.write: w(s+"\n"))
看起来retrlines正在获取命令和回调-但随后还有一个附加的第3个参数。到底在做什么
另外,我理解这里解释的lambda(看起来与javascript匿名函数回调非常相似),但看不到如何将其应用于这种情况,因为在第二个参数中定义了lamda。为什么Python lambda有用?
在此python代码中发生了太多不熟悉的事情。有人可以解释这行发生了什么。
不,该retrlines
函数没有可选的第三个参数,而lambda则具有可选的第二个参数。
该retrlines
函数传递了两个参数:
"RETR " + filename
和
lambda s, w=outfile.write: w(s+"\n")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句