如何获得Python中的类的文件path?
给定Python中的类C,如何确定类定义在哪个文件中? 我需要一些可以从C类或从C类实例工作的东西。
我这样做的原因,是因为我一般都把粉丝放在同一个文件夹里。 我想要创build一个使用Django模板来将自己呈现为HTML的类。 基本的实现应该根据类定义的文件名来推断模板的文件名。
说我把一个类的位置Artifact文件“base / artifacts.py”,然后我想默认行为是模板名称是“base / LocationArtifact.html”。
您可以使用检查模块,如下所示:
import inspect inspect.getfile(C.__class__)
尝试:
import sys, os os.path.abspath(sys.modules[LocationArtifact.__module__].__file__)
这是Django的错误方法,并且确实是在强制执行。
典型的Django应用程序模式是:
- /项目
- /应用程序的名字
- models.py
- views.py
- /模板
- 的index.html
- 等等
- /应用程序的名字