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

使用pathlib通过字符串值定义路径及拼接TypeError报错解决问询

问题修复方案

错误原因

你触发报错的核心原因是pathlib.Path生成的是路径对象,而非普通字符串,Python不支持路径对象和字符串直接用+运算符拼接,因此抛出了对应的TypeError。

修复方法

pathlib原生支持使用/运算符完成路径拼接,不需要手动拼接字符串,也不需要提前指定完整路径,还能自动适配不同操作系统的路径分隔符规则,修改后的代码如下:

import pathlib

def script(first_name='', second_name=''):
    # 注意:原代码中你主动覆盖了入参first_name、second_name的取值,会导致传入的参数失效,需要删除以下两行
    # first_name='first_name'
    # second_name='second_name'
    project_path = pathlib.Path.home() / 'Desktop' / 'Project_folder'
    name_path = project_path / f"{first_name}{second_name}"
    subfolder = name_path / 'subfolder' 
    
    # 执行文件夹创建,parents会自动创建不存在的上级目录,exist_ok避免路径已存在时报错
    subfolder.mkdir(parents=True, exist_ok=True)

额外使用说明

  • /运算符可以直接连接路径对象和任意字符串段,多段路径拼接时可以连续使用,不需要单独处理拼接逻辑
  • 如果需要单独获取路径的字符串格式,对路径对象调用str()方法即可
  • 不需要手动处理Windows的反斜杠、Unix系系统的正斜杠差异,pathlib会自动适配当前运行的系统

内容的提问来源于stack exchange,提问作者Boris Donnelly

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 11:06:05