2012-03-16 86 views
2

我正在實現一個函數框架在Python中被訪問從 C#。IronPython在運行時獲取函數代碼作爲字符串

作爲一項要求,我必須在運行時提供函數的「字符串表示」。

有沒有辦法讓一個函數的代碼定義爲一個字符串?東西 像:

def sum(a,b): 
    return a + b 

def ToString(sum): 
    # would return "def sum(a,b): return a+b" or something alike. 

非常感謝!

+0

表示法實際上是否必須指出函數的源代碼是什麼?你打算怎麼處理這個表示? – 2012-03-16 22:41:28

回答

1

您正在尋找的功能是inspect.getsource()。請注意,只有在源文件可訪問的情況下它纔會起作用,因此在交互式控制檯中不起作用。