【发布时间】:2011-04-01 20:35:26
【问题描述】:
为了分摊函数调用开销,我更改了我的生成器,以便它生成一个包含几个值的固定长度列表,而不是一次生成一个值。生成器,就像它最初的样子,从一个包含几个腌制对象的文件中取消腌制一个对象,并产生它。然后在消耗生成器的 for 循环中处理这些。事实证明,这种方法比将对象处理代码放在手动展开循环中要慢得多,该循环一次解开文件中的几个连续项目。我正在尝试妥协。我修改后的生成器一次生成一个固定长度的腌制对象列表。我正在寻找一种 Python 风格的方法来在消费者端解压未腌制的对象包。
有没有办法在没有额外嵌套循环的情况下解构这些数据包?我错误地认为* 操作员会这样做:
for x in *packetizing_generator(): f(x)
嵌套循环当然可以,但我想知道是否有更短更优雅的方式。
【问题讨论】: