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

Pandas读取含单引号文件名的文件报错,求可行解决方案

解决带单引号文件名的Pandas读取问题

核心问题分析

你遇到的问题根源有两个:

  • 定义文件名时的字符串语法错误:用单引号包裹含单引号的文件名会提前终止字符串,导致语法报错
  • 直接用+拼接路径的方式不够可靠,可能引发路径格式问题

无需移除单引号的解决步骤

1. 正确定义含单引号的文件名

Python中处理含单引号的字符串有两种方式:

  • 用双引号包裹文件名,内部单引号无需转义:
    FileName = "ABC'01myFile.xlsx"
    
  • 在单引号字符串中用**反斜杠\**转义内部单引号:
    FileName = 'ABC\'01myFile.xlsx'
    

同时,路径字符串建议用**原始字符串r''**定义,避免反斜杠被当成转义字符:

Path = r'C:\xxx\yyy-testing\my_inner_path'

2. 用安全方式拼接路径

不要直接用+拼接,推荐两种更可靠的方式:

方式一:使用os.path.join
import os
import pandas as pd

Path = r'C:\xxx\yyy-testing\my_inner_path'
FileName = "ABC'01myFile.xlsx"

# 自动处理路径分隔符,避免拼接错误
full_path = os.path.join(Path, FileName)

# 正常读取文件
mydf = pd.read_excel(full_path, engine='openpyxl', sheet_name=sheet_name)
方式二:使用pathlib(Python 3.4+推荐)
from pathlib import Path
import pandas as pd

base_path = Path(r'C:\xxx\yyy-testing\my_inner_path')
file_name = "ABC'01myFile.xlsx"

# 用/运算符拼接路径,更直观
full_path = base_path / file_name

# 直接传入Path对象即可,无需转成字符串
mydf = pd.read_excel(full_path, engine='openpyxl', sheet_name=sheet_name)

原理说明

只要文件名字符串定义正确,且路径拼接格式合法,Pandas的read_excel完全支持读取含单引号的文件——报错的本质是字符串定义或路径拼接错误,而非单引号本身的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 04:10:36