Python新手使用pandas加载分号分隔CSV报错求助
解决分号分隔CSV加载问题
先修复路径转义错误
你的代码里路径使用单反斜杠,Python会把\U识别为Unicode转义字符,这大概率是sep=';'时报错的核心原因。把路径改成以下两种写法之一:
- 用双反斜杠转义:
df = pd.read_csv("C:\\Users\\Sophia Kohn\\Downloads\\wdwM-military-23.csv", sep=';') - 用原始字符串(引号前加
r):df = pd.read_csv(r"C:\Users\Sophia Kohn\Downloads\wdwM-military-23.csv", sep=';')
若仍报错,尝试这些排查步骤
- 指定文件编码:部分CSV是带BOM的UTF-8格式,或使用了
cp1252这类编码,可尝试指定编码加载:df = pd.read_csv(r"C:\Users\Sophia Kohn\Downloads\wdwM-military-23.csv", sep=';', encoding='utf-8-sig') # 若无效,试试cp1252编码 df = pd.read_csv(r"C:\Users\Sophia Kohn\Downloads\wdwM-military-23.csv", sep=';', encoding='cp1252') - 适配带空格的分号:如果文件里分号前后有空格,用正则表达式作为分隔符:
df = pd.read_csv(r"C:\Users\Sophia Kohn\Downloads\wdwM-military-23.csv", sep=r'\s*;\s*') - 手动校验文件内容:用Notepad++这类编辑器打开CSV,查看前几行的分隔符是否确实是分号,有没有隐藏的换行符、特殊字符干扰拆分逻辑。
验证加载效果
加载成功后,执行df.head()查看前几行数据,确认列是否被正确拆分,单元格内不再保留分号。
内容的提问来源于stack exchange,提问作者Sophia Kohn
相关产品推荐
相关产品推荐

