2

所以我有一个变量,我想成为一个字符串或一个从给定对象实例返回字符串的函数。

基本上:

def evalstr(var, someob):
    if callable(var):
        return var(someob)
    else:
        return var

这似乎是一个内置的东西。是否有一种干净的速记/内置功能?

4

1 回答 1

0

不,没有速记,因为这不是一个好主意。您可以try使用/子句编写上述内容except TypeError,但我仍然无法想象这样的函数有用的情况(也许您可以启发我们?)。这个函数的文档字符串可能比函数体长,而且仅从函数的名称很难推断出函数的作用。所以我猜要么这里的信息太少而没有用(你应该向我们展示整个用例),或者(这是我的猜测)你在这个错误的轨道上。

于 2013-09-03T17:08:01.383 回答