首页 > 解决方案 > 如何在 Python 中获取函数的路径?

问题描述

我想在 Python 中获取函数的文件路径。

怎么做?

例如,

import keras.backend as K
y = K.resize_images(x, 2, 2, 'channels_last')
path = function(K.resize_images)
print(path)
#C:\Program Files\Python36\Lib\site-packages\keras\backend\tensorflow_backend.py

谢谢你。

标签: python

解决方案


为此,您可以使用检查模块getfile()中的功能。

例如,给定以下文件:

inspect-example.py

#!/usr/bin/python

import os
import inspect
import external_def

def foo():
  pass
    
print(os.path.abspath(inspect.getfile(foo)))
print(os.path.abspath(inspect.getfile(external_def.bar)))

external_def.py

def bar():
  pass

执行inspect_example.py产生以下输出:

$ python inspect-example.py
/home/chuckx/code/stackoverflow/inspect-example.py
/home/chuckx/code/stackoverflow/external_def.py

推荐阅读