精华内容
下载资源
问答
  • python处理excel数据

    2021-04-17 18:24:52
    最近想将测试用例通过.CSV的格式批量导入我的自动化测试框架中,复习了一下如何用python处理excel文件,学习总结如下: 首先,要安装python+conda+镜像库....安装镜像库后就一劳永逸了,离线安装各种库只是确认pip...

    最近想将测试用例通过.CSV的格式批量导入我的自动化测试框架中,复习了一下如何用python处理excel文件:

    第一步:导入相关库xlrd读取库xlwt写入库

    第二步:学习读取excel对象,对象包括工作簿/工作表/单元格/行/列等集合,将对象赋予变量存储至内存后,通过调用xlrd读取库中的各种函数获取所指对象的关键信息,简单打印到控制台上。

    第三步:学习修改excel对象,对象包括工作簿/工作表/单元格/行/列等集合,将工作簿对象复制到内存后,通过调用xlwt、xlutils写入库,修改excel对象,最后另存为新文件或者覆盖。

    P01读取 

    #获取2.xlsx对象,赋予对象wb

    '''
    MODULE:.py就可以称为模块
    PACKAGE:在模块之上的概念,包含init.py
    LIBRARY:有强大的标准库,第三方库
    
    '''
    import xlrd
    import xlwt
    #获取2.xlsx对象,赋予对象wb
    wb =xlrd.open_workbook('C:/Users/Administrator/Desktop/2.xlsx')
    print(wb)
    

    【运行结果】
    <xlrd.book.Book object at 0x000001C2EC04D760>
    //xlrd.book.Book 指的是工作簿对象
    //0x000001C2EC04D760指的是工作簿在内存中的位置


    #获取wb工作簿下的所有工作表对象

    ws = wb.sheets()
    print(ws)
    
    

    #获取所有工作表名 

    wsname = wb.sheet_names()
    print(wsname)
    
    

    #通过表名获取工作表对象

    WS1 = wb.sheet_by_name('DOG')#通过表名获取了工作表对象DOG
    print(WS1)
    print(WS1.name)
    
    WS2 = wb.sheet_by_index(0)#通过表名获取了第一个工作表对象DOG
    print(WS2.name)
    
    WS3 = wb.sheets()[0]#通过表名获取了第一个工作表对象DOG
    print(WS3.name)
    
    if WS1 == WS2 ==WS3 :
        print('ok')
    

    #获取指定行/列数据 

    a=9
    b=8
    row_data = WS1.row_values(a)#获取第a+1=10行数据
    col_data = WS1.col_values(b)#获取第b+1=9行数据
    
    print(row_data)
    print(col_data)

     #获取单元格数据

    x = int(input('x='))
    y = int(input('y='))
    cell_data_1 = WS1.cell_value(x,y)
    cell_data_2 = WS2.cell(x,y).value
    # print('数据是:'+cell_data_1)
    print(cell_data_2)

     

    展开全文
  • Python处理Excel数据

    千次阅读 2012-12-13 07:47:45
    Python处理Excel数据 2012-08-02 10:07:32 我来说两句  收藏 我要投稿 前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的...
    Python处理Excel数据
    2012-08-02 10:07:32     我来说两句      
    收藏  我要投稿

    前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理Excel数据的经验,甚至于自己都很少用到Excel。记得《Python核心编程》的最后一章里有讲到用Win32 COM操作office, 看了一下讲的不是很清楚。google了一下找到不少能处理excel数据的模块。对比了一下最终选定了openpyxl,openpyxl专门用于处理Excel2007及以上版本产生的xlsx文件。不幸的是我所得到的数据中xls和xlsx都有,不过转换并不是什么难事,就暂时吧这个问题忽略了。

    模块的安装过程非常简单,官网上有简单的使用说明和API文档,整体来说使用非常容易,也基本能满足我的需求。对于Excel文件,我所需要的只是从中将相应位置的数据读取出来,以及把数据写入到对应的位置中去。而其间数据的处理,通过python可以很容易地完成。

    1. Excel数据的类型及组织方式
    openpyxl中定义了多种数据格式,我只涉及到了其中最重要的三种:
    NULL: 空值,对应于python中的None,表示这个cell里面没有数据。
    numberic: 数字型,统一按照浮点数来进行处理。对应于python中的float。
    string: 字符串型,对应于python中的unicode。

    每一个Excel数据文件从上至下分为三个层级的对象:
    workbook: 每一个Excel文件就是一个workbook。
    sheet: 每一个workbook中可以包含多个sheet,具体就对应Excel中我们在左下脚所看到的“sheet1”,“sheet2”等。
    cell: 每一个sheet就是我们通常所看到的一个表格,可以含有m行,n列,每个确定的行号,列号所对应的一个格子就是一个cell。

    2. 从Excel中读取数据
    从一个既有的xlsx文件中读取数据,按照Excel文件的三个层级,分别做以下三个步骤

    1. 打开workbook:

    from openpyxl import load_workbook
    wb = load_workbook('file_name.xlsx')2. 打开所需的sheet:
    我们可以这样打开workbook中的第一个sheet:

    ws = wb.get_active_sheet()变量_active_sheet_index用来确定获取哪一个sheet,而默认情况下它被置为0。
    也可以通过sheet的名称来获取sheet:

    ws = wb.get_sheet_by_name("sheet_name")openpyxl似乎没有提供按索引来读取sheet,不过我们总是能很容易地通过sheet_name来实现:

    sheet_names = wb.get_sheet_names()
    ws = wb.get_sheet_by_name(sheet_names[index])3. 获取对应cell的值:
    openpyxl提供可两种方式来读取cell,一是按照Excel的习惯用字母来代表列号,例如:

    c = ws.cell('A4').value也可以按照行号列号来读取:

    d = ws.cell(row = 3, column = 0)3. 将数据写入Excel
    同读取类似,写入一个Excel文件,要经历一下四个步骤:
    1. 新建workbook
    直接新建一个workbook对象即可:

    wb = Workbook()2. 新建sheet
    默认情况下,新创建的sheet是排在最后的,若想要创建一个排在最前的sheet,可以传入参数0:

    ws1 = wb.create_sheet()  # insert at the end
    ws2 = wb.create_sheet(0)  # insert at the first position3. 写入数据

    直接将要写入的数据赋值给相应的cell即可,若仅仅是修改一个表。可以跳过前两个步骤,不过要注意不要覆盖掉其它数据:

    ws.cell('B5') = value1
    ws.cell(row = 3, column = 7) = value24. 保存数据

    最后写入将数据写入即可,注意若保存路径下有同名的文件的话,之前的文件会被覆盖:

    wb.save('file_name.xlsx')

    展开全文
  • python 处理Excel数据

    2018-08-22 16:36:40
    可以用python处理excel的第三方库,大家可以根据自己安装的python版本以及处理Excel的需求选择性安装; 本机python版本为3.6,使用库来自第三方,为openpyxl。以下为openpyxl的简单操作示例。 注意: openpyxl只能...

    可以用python处理excel的第三方库,大家可以根据自己安装的python版本以及处理Excel的需求选择性安装;

    本机python版本为3.6,使用库来自第三方,为openpyxl。以下为openpyxl的简单操作示例。

    注意: openpyxl只能操作 xlsx文件而不能操作 xls文件

    安装 openpyxl:在命令行敲以下语句即可;

             pip install openpyxl

    """
    Spyder Editor
    
    This is a temporary script file.
    """
    
    import openpyxl 
    
    wb=openpyxl.load_workbook('D:\WorkSpace\Python3.6.0\python处理excel.xlsx') #打开已经存在的Excel文件
    print(wb.get_sheet_names())#获取工作簿的所有表格名
    sheet=wb.get_sheet_by_name('Sheet1') #获取工作表
    print(sheet.title) 
    
    sheet02=wb.get_active_sheet() #获取工作的表格
    print(sheet02.title)
    '''
    该函数功能读取Excel文件某工作表某行某列的数值
    '''
    import openpyxl
     
    def update_offer(i,fileName,sheetName):
        wb =openpyxl.load_workbook(fileName)     #打开excel表格
        sheet = wb.get_sheet_by_name(sheetName)  #根据工作表名获取工作表
        b = 0                                   #用于统计输出数据条数
        while(i <= sheet.max_row):    
            s = str(i)
            if sheet['A'+s].value != None :       #判断A列单元格是否为空
                b += 1
                print(str(sheet['B'+s].value))      #输出B列中单元格的值
            else:
                break
            i += 1
        print('总计输出数据: '+str(b)+' 条')
     
        
    #print(wb.get_sheet_names())  #输出所有的工作表名
    #print(sheet.title)
    #sheet02 = wb.get_active_sheet()      #获取活动的工作表
    #print(sheet02.title)
    #print(sheet.max_row)    # 最大行数
    #print(sheet.max_column) # 最大列数
    # print(sheet['A3'].value)  #获取A3单元格内容
    #print(sheet['A3'].column)  #获取单元格列值
    #print(sheet['A3'].row)  #获取单元格行号
     
    if __name__ == '__main__':
        upFileName = 'D:\WorkSpace\Python3.6.0\python处理excel.xlsx'   # excel表格所在路径
        upSheetName = 'Sheet1'      #工作表表名
        i = 2    #从第二行开始读取
        update_offer(i,upFileName,upSheetName)

     

    展开全文
  • python处理excel数据的方法:1、使用xlrd来处理;2、使用【xlutils+xlrd】来处理;3、使用xlwt来处理;4、使用pyExcelerator来处理;5、使用Pandas库来处理。这里有一张excel数据表,下面我们通过示例来看看xlrd、...

    python处理excel数据的方法:1、使用xlrd来处理;2、使用【xlutils+xlrd】来处理;3、使用xlwt来处理;4、使用pyExcelerator来处理;5、使用Pandas库来处理。

    5c77454bf24d7295.jpg

    这里有一张excel数据表,下面我们通过示例来看看xlrd、xlwt、xluntils、pyExcelerator和Pandas是如何处理excel文件数据的。【视频教程推荐:python教程】

    python处理excel数据的方法:

    方法一:使用xlrd来处理excel数据

    示例1:python读取excel文件特定数据import xlrd

    data = xlrd.open_workbook('test.xls') # 打开xls文件

    table = data.sheets()[0] # 打开第一张表

    nrows = table.nrows # 获取表的行数

    # 循环逐行输出

    for i in range(nrows):

    if i == 0: # 跳过第一行

    continue

    print table.row_values(i)[:13] # 取前十三列数据

    示例2:python读取excel文件所有数据import xlrd

    #打开一个xls文件

    workbook = xlrd.open_workbook('test.xls')

    #抓取所有sheet页的名称

    worksheets = workbook.sheet_names()

    print('worksheets is %s' %worksheets)

    #定位到sheet1

    worksheet1 = workbook.sheet_by_name(u'Sheet1')

    """

    #通过索引顺序获取

    worksheet1 = workbook.sheets()[0]

    #或

    worksheet1 = workbook.sheet_by_index(0)

    """

    """

    #遍历所有sheet对象

    for worksheet_name in worksheets:

    worksheet = workbook.sheet_by_name(worksheet_name)

    """

    #遍历sheet1中所有行row

    num_rows = worksheet1.nrows

    for curr_row in range(num_rows):

    row = worksheet1.row_values(curr_row)

    print('row%s is %s' %(curr_row,row))

    #遍历sheet1中所有列col

    num_cols = worksheet1.ncols

    for curr_col in range(num_cols):

    col = worksheet1.col_values(curr_col)

    print('col%s is %s' %(curr_col,col))

    #遍历sheet1中所有单元格cell

    for rown in range(num_rows):

    for coln in range(num_cols):

    cell = worksheet1.cell_value(rown,coln)

    print cell

    方法二:使用xlutils+xlrd来处理excel数据

    示例:向excel文件中写入数据import xlrd

    import xlutils.copy

    #打开一个xls文件

    rb = xlrd.open_workbook('test.xls')

    wb = xlutils.copy.copy(rb)

    #获取sheet对象,通过sheet_by_index()获取的sheet对象没有write()方法

    ws = wb.get_sheet(0)

    #写入数据

    ws.write(1, 1, 'changed!')

    #添加sheet页

    wb.add_sheet('sheetnnn2',cell_overwrite_ok=True)

    #利用保存时同名覆盖达到修改excel文件的目的,注意未被修改的内容保持不变

    wb.save('test.xls')

    方法三:使用xlwt来处理excel数据

    示例1:新建excel文件并写入数据import xlwt

    #创建workbook和sheet对象

    workbook = xlwt.Workbook() #注意Workbook的开头W要大写

    sheet1 = workbook.add_sheet('sheet1',cell_overwrite_ok=True)

    sheet2 = workbook.add_sheet('sheet2',cell_overwrite_ok=True)

    #向sheet页中写入数据

    sheet1.write(0,0,'this should overwrite1')

    sheet1.write(0,1,'aaaaaaaaaaaa')

    sheet2.write(0,0,'this should overwrite2')

    sheet2.write(1,2,'bbbbbbbbbbbbb')

    #保存该excel文件,有同名文件时直接覆盖

    workbook.save('test.xls')

    print '创建excel文件完成!'

    方法四:使用pyExcelerator来处理excel数据

    示例1:读excel文件中的数据import pyExcelerator

    #parse_xls返回一个列表,每项都是一个sheet页的数据。

    #每项是一个二元组(表名,单元格数据)。其中单元格数据为一个字典,键值就是单元格的索引(i,j)。如果某个单元格无数据,那么就不存在这个值

    sheets = pyExcelerator.parse_xls('test.xls')

    print sheets

    示例2:新建excel文件并写入数据import pyExcelerator

    #创建workbook和sheet对象

    wb = pyExcelerator.Workbook()

    ws = wb.add_sheet(u'第一页')

    #设置样式

    myfont = pyExcelerator.Font()

    myfont.name = u'Times New Roman'

    myfont.bold = True

    mystyle = pyExcelerator.XFStyle()

    mystyle.font = myfont

    #写入数据,使用样式

    ws.write(0,0,u'ni hao 帕索!',mystyle)

    #保存该excel文件,有同名文件时直接覆盖

    wb.save('E:\Code\Python\mini.xls')

    print '创建excel文件完成!'

    方法五:使用Pandas库来处理excel数据

    示例1:读取excel数据#导入pandas模块

    import pandas as pd

    #直接默认读取到这个Excel的第一个表单

    sheet = pd.read_excel('test.xls')

    #默认读取前5行数据

    data=sheet.head()

    print("获取到所有的值: {0}".format(data))#格式化输出

    #也可以通过指定表单名来读取数据

    sheet2=pd.read_excel('test.xlsx',sheet_name='userRegister')

    data2=sheet2.head()#默认读取前5行数据

    print("获取到所有的值: {0}".format(data2))#格式化输出

    示例2:操作Excel中的行列#导入pandas模块

    import pandas as pd

    sheet=pd.read_excel('webservice_testcase.xlsx')#这个会直接默认读取到这个Excel的第一个表单

    #读取制定的某一行数据:

    data=sheet.ix[0].values #0表示第一行 这里读取数据并不包含表头

    print("读取指定行的数据: {0}".format(data))

    #读取指定的多行:

    data2=sheet.ix[[0,1]].values

    print("读取指定行的数据: {0}".format(data2))

    #读取指定行列的数据:

    data3=sheet.ix[0,1]#读取第一行第二列的值

    print("读取指定行的数据: {0}".format(data3))

    #读取指定的多行多列的值:

    data4=sheet.ix[[1,2],['姓名','电话']].values #读取第二行第三行的姓名以及电话列的值,这里需要嵌套列表

    print("读取指定行的数据: {0}".format(data4))

    #读取所有行指定的列的值:

    data5=sheet.ix[:,['姓名','电话']].values #姓名以及电话列的值

    print("读取指定行的数据: {0}".format(data5))

    #获取行号输出:

    print("输出行号列表",sheet.index.values)

    #获取列名输出:

    print("输出列标题",sheet.columns.values)

    以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

    以上就是python如何处理excel数据的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • Python处理excel数据

    千次阅读 2016-08-23 13:02:54
    Python操纵excel,控制读写
  • 这里做一个Python处理Excel数据的总结,基本受用大部分情况。相信以后用Python处理Excel数据不再是难事儿!Python处理Excel数据需要用到2个库:xlwt 和 xlrd。xlwt库负责将数据导入生成Excel表格文件,而 xlr...
  • 之前没有处理Excel数据的经验,甚至于自己都很少用到Excel。记得《Python核心编程》的最后一章里有讲到用Win32 COM操作office, 看了一下讲的不是很清楚。google了一下找到不少能处理excel数据的模块。对比了一下...
  • Python 处理Excel数据

    2017-10-24 14:28:07
    python对各省市的数据按行和列进行处理,结果以json形式输出。
  • Python处理Excel数据-pandas篇非常适用于大量数据的拼接、清洗、筛选及分析在计算机编程中,pandas是Python编程语言的用于数据操纵和分析的软件库。特别是,它提供操纵数值表格和时间序列的数据结构和运算操作。它的...
  • 之前没有处理excel数据的经验,甚至于自己都很少用到excel。记得《python核心》的最后一章里有讲到用win32 com操作office, 看了一下讲的不是很清楚。google了一下找到不少能处理excel数据的模块。对比了一下最终...
  • 工作中经常会遇到一些每天都要进行的重复操作,没一点技术含量,做起来却费时费力,还时不时出点小错。为应对这种情况,有些人...我们来看看如何用Python处理excel数据:一、Python处理Excel的方式python对excel的操...
  • Python处理Excel数据-pandas篇非常适用于大量数据的拼接、清洗、筛选及分析在计算机编程中,pandas是Python编程语言的用于数据操纵和分析的软件库。特别是,它提供操纵数值表格和时间序列的数据结构和运算操作。它的...
  • SAST Weekly 是由电子工程系学生科协推出的科技系列推送,内容涵盖信息领域技术科普、研究前沿热点介绍、科技新闻跟进...本文介绍用python处理excel数据,以大物实验数据处理为例,看看能否简化大物实验的数据处理...
  • Panadas库提供了一些功能,我们可以使用该功能完整地读取Excel文件,也可以只读取选定的一组数据。 还可以读取其中包含多个工作表的Excel文件。这里主要使用read_excel函数从中读取数据。将Excel文件作为输入我们在...
  • 第一种情况:前几行比较脏当excel的列名不在第一行,且第一行或前几行的数据比较脏,如下图import pandas as pd data = pd.read_excel('C:/tmp/002/People.xlsx') print('显示表格的列名:', data.columns) # 打印...
  • Python处理Excel数据

    2020-07-09 11:44:02
    1.从零基础开始用python处理Excel数据 1-1 什么是python.mp4 1-2 为什么要学习用Python处理Excel表格.mp4 1-3 手把手教你安装python程序.mp4 1-4 安装Python集成开发工具PyCharm.mp4 1-5 Python的输出与输入....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,831
精华内容 2,332
关键字:

python处理excel数据

python 订阅