【发布时间】:2016-07-27 17:11:48
【问题描述】:
我正在处理奇怪的问题。考虑这个简单的代码:
print(__file__)
print("***" + os.path.dirname(__file__) + "###")
现在,当我在装有 Fedora 23 操作系统的笔记本电脑上运行此代码时,输出为:
/home/.../ExperimentalSystem/BullshitSetupGenerator.py
***/home/.../ExperimentalSystem###
在 Ubuntu 15.10 上运行相同的代码:
BullshitSetupGenerator_delete_me.py
***###
谁能解释我为什么?我错过了什么吗?
【问题讨论】:
-
dirname函数没有不一致。不一致之处在
__file__ -
与
dirname或__file__不一致?我的猜测是后者。您是否在两个地方使用相同的相对路径运行代码?最后,为了获得一致的行为,我想你可以使用os.path.dirname(os.path.abspath(__file__)) -
它与文件有关,是的。
标签: python linux operating-system dirname