将WindowsPath转换为PosixPath

时间:2019-02-13 13:28:30

标签: python pathlib

我正在使用Path类在pathlib中管理我的Python项目中的路径。

当我使用Linux时,一切正常。但是在Windows上,我有一个小问题。

在代码的某个时刻,我必须编写一个JavaScript文件,其中列出了对其他几个文件的引用。这些路径必须以POSIX格式编写。但是当我在Windows上执行str(my_path_instance)时,该路径是以Windows格式编写的。

您知道使用pathlib将WindowsPath转换为PosixPath的简单方法吗?

2 个答案:

答案 0 :(得分:1)

pathlib为此使用了as_posix method

pathlib.path('foo\\bar').as_posix()

除此之外,您通常可以通过调用适当的构造函数在Windows和POSIX路径之间进行转换。 The documentation states

  

在Unix上运行时,无法实例化WindowsPath,但是可以实例化PureWindowsPath。 [反之亦然]

因此,请使用Pure*类构造函数:

str(pathlib.PurePosixPath(your_windows_path))

答案 1 :(得分:1)

Python pathlib (如果要在Unix计算机上操作Windows路径(反之亦然))-在Unix上运行时无法实例化WindowsPath,但是可以实例化PureWindowsPath/PurePosixPath

enter image description here