我正在努力做到以下几点:
import functools
class TestClass():
def method(self, n):
for i in xrange(n):
yield i
# This works
for x in TestClass().method(10):
print x
# This gets a TypeError: functools.partial object not iterable
for x in functools.partial(TestClass().method, 10):
print x哪里出什么问题了?
发布于 2014-01-19 19:11:09
functools.partial创建了一个对象,该函数的行为类似于一个新函数,该函数使用一些参数“冻结”来模仿旧函数。因此,您必须调用这个新函数才能获得相同的输出:
for x in functools.partial(TestClass().method, 10)():
print xhttps://stackoverflow.com/questions/21221257
复制相似问题