You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python跨平台实现文件路径到点分表示法的转换方法

Python跨平台路径转模块名方法

使用Python标准库自带的pathlib即可实现,无需引入第三方依赖,天然支持Windows、Linux、macOS等多平台路径格式:

实现逻辑

  • 将输入的路径字符串转为Path对象,自动适配不同系统的路径分隔符(Windows的\、类Unix系统的/都可被正常识别)
  • 调用with_suffix('')方法移除文件后缀名
  • 将路径的各分段用.拼接即可

代码示例

from pathlib import Path

def path_to_module(path_str: str) -> str:
    path_obj = Path(path_str)
    # 过滤空片段可兼容绝对路径开头的根标识,无需兼容可去掉if判断
    return '.'.join(part for part in path_obj.with_suffix('').parts if part)

测试效果

  • 输入类Unix路径:path_to_module("aaa/bbb/ccc/ddd.py"),输出结果为aaa.bbb.ccc.ddd
  • 输入Windows路径:path_to_module("aaa\\bbb\\ccc\\ddd.py"),输出结果为aaa.bbb.ccc.ddd

如果需要处理带有多层后缀的文件(例如ddd.tar.gz),可以把with_suffix('')替换为多次调用该方法,或直接取path_obj.stem获取不带任何后缀的文件名。


内容的提问来源于stack exchange,提问作者Martin Gergov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 19:24:04