MST

星途 面试题库

面试题:Python中处理文件路径跨平台问题

在Python中,如何编写一个函数,使其能在Windows、Linux和macOS等不同操作系统下正确拼接文件路径并创建多级目录?要求考虑到路径分隔符的差异,并且代码要简洁高效,尽量使用标准库。
23.0万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
import os


def create_dirs(file_path):
    os.makedirs(os.path.dirname(file_path), exist_ok=True)
    return file_path


在不同操作系统下,os.path.join 可以正确拼接文件路径,os.makedirs 可以创建多级目录。这里 os.makedirsexist_ok 参数设为 True,表示如果目录已经存在,不会引发异常。调用 create_dirs 函数传入想要创建的文件路径,它会先创建好路径中的各级目录,然后返回拼接好的文件路径。例如:

file_path = os.path.join('parent', 'child', 'test.txt')
result = create_dirs(file_path)
print(result)

上述代码在不同操作系统下都能正确工作,拼接文件路径并创建相关目录。