【问题标题】:How to read files with messy unreadable name?如何读取具有凌乱不可读名称的文件?
【发布时间】:2016-12-22 03:32:29
【问题描述】:

我有很多名称不可读的数据文件:

在 python 中,我可以使用 glob.glob 来查找它们。 但是当我尝试使用 pandas 读取文件时,会发生错误。 这是我的代码:

import pandas as pd
import os
import glob
cwd=os.getcwd()
os.chdir(cwd)
for file in glob.glob("S*.xls"):
    temp=pd.read_excel(file)

这是错误信息:

IOError: [Errno 22] invalid mode ('rb') or filename: 'Shibor\xa8\xbay?Y2006.xls' 

请问,如何找到名称为“ShiborÊý¾Ý2015.xls”的文件?

【问题讨论】:

    标签: python pandas file-io path directory


    【解决方案1】:

    使用 unicode 文件名/路径添加“u”前缀,如下所示:

    for file in glob.glob(u"S*.xls"):
        temp=pd.read_excel(file)
    

    【讨论】:

      【解决方案2】:

      文件名中有一个 unicode 字符。您需要将正确编码的字符串发送到 pandas 以打开文件。请参阅this pandas 的公开问题。老实说,我只会在你的 windows/gui 环境中修复文件名,并尝试获取生成文件的进程,以便为你提供更好的名称。

      以后,如果您说明python的版本和您的操作系统风格会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多