美文网首页
xldr的简单使用

xldr的简单使用

作者: 龙凕 | 来源:发表于2018-07-19 16:04 被阅读0次

需要处理excel里配表的数据,ms的产品数据格式不是很简单,直接操作有点麻烦。基本上这种活就直接上python了。我不用了解也知道肯定有包。xlrd是一个python的包,可以方便的操作excel里的数据。

最简单操作流程:
首先import xlrd
然后用xlrd.open_work(filename)来打开.xlsx文件
接着使用sheet_by_name(sheetname)来打开工作表,也可以用sheet_by_index(0),直接索引sheets()[0]
sheet.nrows可以用于遍历这个sheet中每一行数据,同理ncols获取列
sheet.row_values(row)可以用来遍历row里面的每个item的数据,同理col_values
然后各种操作一番之后,自己保存

以上是读数据,如果想反手写excel,重点在于确定具体的单元格,使用cell(x,y).value读取,使用put_cell(row,col, value,xf)
xf是扩展格式,自行理解吧
In cell XFs, flag==0 means the attributes of the parent style XF are used, (but only if the attributes are valid there); flag==1 means the attributes of this XF are used.

格式的问题
基本上就是转utf-8的问题,只要unicode(item).encode("utf-8")就行,或者转别的也ojbk

一个简单的代码:

import xlrd
import csv
import os, shutil

def csv_from_excel():
    dstPath = "../outputassets/share_assetbundles/ios/data/"

    for file in os.listdir('.'):

        if os.path.isfile(file) and os.path.splitext(file)[1]=='.xlsx' : 

            #open workbook
            wb = xlrd.open_workbook(file)

            #find target sheet
            sh = wb.sheet_by_name('Sheet1')

            #create corresponding csv file
            csv_name = dstPath + os.path.splitext(file)[0] + '.csv'
            csv_name_android = androidPath + os.path.splitext(file)[0] + '.csv'
            
            your_csv_file = open(csv_name, 'wb')
            wr = csv.writer(your_csv_file)
            for rownum in xrange(sh.nrows):
                line = []
                for entry in sh.row_values(rownum):
                    if isinstance(entry, float):
                        entry_int = int(entry)
                        if entry_int == entry:
                            line.append(entry_int)
                    else:
                        line.append(unicode(entry).encode("utf-8"))
                wr.writerow(line)
            your_csv_file.close()
            



if __name__ == '__main__':
    csv_from_excel()

相关文章

  • xldr的简单使用

    需要处理excel里配表的数据,ms的产品数据格式不是很简单,直接操作有点麻烦。基本上这种活就直接上python了...

  • 史诗大作|“投资地图”概论

    原文链接:https://mp.weixin.qq.com/s/AW--6zHK1xldR1p6-WWLoA 导读...

  • 简单使用

    创建模型 过滤器 我们有一些字段和我们想让用户筛选的基础上 名称、价格或release_date。 我们创建一个 ...

  • gorange

    数组中简单使用 map中简单使用

  • UICollectionViewLayout的简单使用(简单瀑布

    对于需要使用到列表的页面,一般是使用UITableView或者是UICollectionView来实现。一直以来都...

  • 零碎的小程序笔记

    目录 template的简单使用WXS的简单使用npm的简单使用倒计时js的实现wx:for的使用一些js方法记录...

  • 简单使用使用kaggle

    向我这样的条件不好的可以考虑借助云gpu来加速训练,借助kaggle可以在kaggle服务器上训练数据,kaggl...

  • 命令行的简单使用

    Git命令行的简单使用,仅供自己使用 pod命令行的简单使用

  • Alamofire类似AFNetworking的简单使用和封装

    简单的使用。简单的使用。简单的使用。注定该文弱鸡一个,求拍砖。 一、介绍 Alamofire(Swift)的前身是...

  • shiro的简单使用

    大家好,我是IT修真院北京分院第26期的学员,一枚正直纯洁善良的JAVA程序员 今天给大家分享一下,修真院官网JA...

网友评论

      本文标题:xldr的简单使用

      本文链接:https://www.haomeiwen.com/subject/rmutmftx.html