开发者社区> 问答> 正文

如何用python将二进制excel数据读取出来?:报错

excel文件格式如下

name   ID  time

bob    1    2016-12-30

John    1    2016-12-30

现在这个excel上传被转换成了一个二进制文件,并且存储在变量filedata里面;

直接读取filedata是一长串乱码;请问如何用python将原来excel表中的第一列数据读出来,复制给col_1变量;第二列读出来赋值给col_2变量,第三列读出来赋值给col_3变量?

谢谢!

展开
收起
kun坤 2020-06-06 17:03:39 2379 0
1 条回答
写回答
取消 提交回答
  • 将execl表格导出为csv格式,然后数据就是一行一行以逗号分割的数据。后面就好办了吧######找python的excel库。
    ######

    http://www.lexicon.net/sjmachin/xlrd.html

    多看看文档有益身心健康

    file_contents... as a string or an mmap.mmap object or some other behave-alike object. If file_contents is supplied, filename will not be used, except (possibly) in messages.

    ######

    import pandas as pd

    data=pd.read_excel(file_excel)


    ######

    引用来自“魔力猫”的评论

    找python的excel库。
    已经试过很多了,都是读取确定的文件路径的excel文件,和我现在的情况不一样,我是需要读取二进制excel文件######回复 @魔力猫 : 同意。找找肯定能找到读对file对象的接口,把filedata写到一个StringIO里传给它就行了######你仔细看看API,肯定有写怎么处理流的API。######不上班吧######

    import xlrd

    data = xlrd.open_work(filedata)

    table = data.sheets()[0]

    col_1 = table.col_values(0)

    col_2 = table.col_values(1)

    ...

    ######

    引用来自“noob_zxf”的评论

    import xlrd

    data = xlrd.open_work(filedata)

    table = data.sheets()[0]

    col_1 = table.col_values(0)

    col_2 = table.col_values(1)

    ...

    xlrd.open_workbook()是不行的,该函数直接将filedata作为文件全名来处理的;


    ###### "excel上传被转换成了一个二进制文件"  得搞清楚上传的这块怎么做的。才能逆向推回来.######\t
    2020-06-06 17:03:44
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载