【发布时间】:2011-09-18 23:14:05
【问题描述】:
在 PHP 中,__DIR__ magic constant 计算为包含该常量出现的文件的目录的路径。
Python 中是否有等效的功能?
【问题讨论】:
标签: php python magic-constants
在 PHP 中,__DIR__ magic constant 计算为包含该常量出现的文件的目录的路径。
Python 中是否有等效的功能?
【问题讨论】:
标签: php python magic-constants
os.path.dirname(__file__)
在 Python 3.4 和更新版本中,就是这样 - 你得到一个绝对路径。
在早期版本的 Python 中,__file__ 指的是在模块导入时间相对于 cwd 的文件位置。如果您拨打chdir,信息将会丢失。如果这成为问题,您可以将以下内容添加到模块的根目录:
import os.path
_dir = os.path.dirname(os.path.abspath(__file__))
但同样,如果您只针对 Python 3.4+,则不再需要。
【讨论】:
__file__ 是绝对的,因为 stackoverflow.com/a/22866630/4200039 的 3.4,而且 chdir 似乎也不再是问题,正如 stackoverflow.com/a/23616783/4200039 所证明的那样
__dir__ ?” ...这是因为命名问题-python已经使用了dir和__dir__() 但是对于对象属性获取...(不要问我为什么)我个人认为他们可以编造了类似__directory__ #shrug