[Python]打印实参名

来源:互联网 发布:双子星网上交易软件 编辑:程序博客网 时间:2024/05/21 13:22
import inspect, redef varname(p):    funcname= 'varname'    for line in inspect.getframeinfo(inspect.currentframe().f_back)[3]:        m = re.search(r'\b%s\s*\(\s*([A-Za-z_][A-Za-z0-9_]*)\s*\)' %funcname, line)    if m:        return m.group(1)if __name__ == '__main__':    shit = 233    print varname(shit)

这个可以参考某乎的讨论:
https://www.zhihu.com/question/42768955

原创粉丝点击