我有一个函数,当它被调用时,我想知道返回值将被分配给什么 - 特别是当它被解压缩为元组时。所以:
a = func() # n = 1
对比
a, b, c = func() # n = 3
我想使用n
in的值func
。一定有什么魔法inspect
可以_getframe
让我做到这一点。有任何想法吗?
免责声明(因为现在这似乎是必要的):我知道这是时髦的,不好的做法,不应该在生产代码中使用。它实际上看起来像我在 Perl 中所期望的。我不是在寻找一种不同的方法来解决我所谓的“实际”问题,但我很好奇如何实现我上面所要求的。这个技巧的一个很酷的用法是:
ONE, TWO, THREE = count()
ONE, TWO, THREE, FOUR = count()
和
def count():
n = get_return_count()
if not n:
return
return range(n)