admin管理员组

文章数量:1794759

Python:os.path.join()产生的斜杠在Windows和Linux下的不同表现和解决方法

Python:os.path.join()产生的斜杠在Windows和Linux下的不同表现和解决方法

import os.path print(os.path.join('a', 'b', 'c'))

在Linux/macOS下会显示: a/b/c 而在Windows下会显示: a\\b\\c

即 os.path.join()在Linux/macOS下会以斜杠(/)分隔路径,而在Windows下则会以反斜杠(\\)分隔路径。

解决方法
  • 从上面的分析可以发现os.path.join()仅包含对应操作系统类型的实现,所以我们无法通过指定参数的形式生成诸如适用于Linux或Windows的路径,那么如何解决这一问题呢?这里以在Windows下生成Linux格式(斜杠(/)分隔符)路径为例来说明。
通过str.replace()
  • 这是一种简单直接的方法,直接把Windows下os.path.join()生成的反斜杠(\\)全部替换为斜杠(/),如:
import os.path result = os.path.join('a', 'b', 'c') print(result) result = result.replace('\\\\', '/') print(result)
  • 会得到 a\\b\\c a/b/c

Python:os.path.join()产生的斜杠在Windows和Linux下的不同表现和解决方法

本文标签: 斜杠解决方法PATHPythonOS