当我检查脚本中的__file__
变量时,我看到正斜杠一直到某一点,然后文件路径切换到成对的反斜杠。
如果我在这个文件路径C:\WorkFiles\python\wat_disposition\wat_disposition\__init__.py
下的脚本中
然后在脚本中运行print(__file__)
,得到以下输出:
'C:/WorkFiles/python/wat_disposition\\wat_disposition\\__init__.py'
为什么它同时显示正斜杠和反斜杠?它不应该是一个或另一个?
我之所以担心,是因为我想确保我的文件路径对于以后的文件写入操作是有效的。
备注:我在PyCharmWindows7上运行Python3.x
发布于 2018-12-13 04:06:37
当您指定python脚本的相对路径时,就会出现这种情况。相对路径将成为文件的一部分,并且可能与基于当前工作目录(%CD%)和调用到脚本的相对路径的目录分隔符混合在一起。
import os
__file__ = os.path.abspath(__file__)
..。做到了,正如上面@eryksun所指出的那样。Windows上的os.path.abspath()总是将其转换为反斜杠。作为一个风格问题,我不想重写我认为是常量的东西,所以我通常将os.path.abspath()包装在我对文件的一次使用中。
https://stackoverflow.com/questions/38799085
复制相似问题