对比Excel,轻松学习Python报表自动化

  • 更新时间:
  • 5451人关注
  • 免费获取

对比Excel,轻松学习Python报表自动化》是一本关于Python自动化相关的计算机书籍,介绍了关于Excel、Python、报表自动化方面的内容,本书是由电子工业出版社出版,张俊红编写,目前豆瓣、亚马逊、当当、京东等综合评分为:8.6分,我们还提供了样章在线阅读,一起来看下具体内容。

资源详情相关推荐
《对比Excel,轻松学习Python报表自动化》封面
  • 在线阅读
  • 出版社:电子工业出版社
  • 作者:张俊红
  • 大小:46.1 MB
  • 类别:Python自动化
  • 热度:248
  • 对比Excel,轻松学习Python数据分析
  • 从Excel到Python:数据分析进阶指南
  • python操作excel、word、pdf大全
  • 超简单:用Python让Excel飞起来
  • 读者评价

    网友NO.38237
    范湘媛

    这本书是参考书,可能不是特别适合非专业人士。之前看了一些关于python写作的一些基础语法知识的书,但是在实际工作应用中,暂时没有练习就忘记了很多知识。

    Excel是我工作中最常用的数据处理工具。所以读这本书的初衷就是结合我日常的数据处理Excel操作做python练习,从而熟悉Python的工作环境和相关语法。

    网友NO.39396
    暴成弘

    精读过同系列的Python数据分析,还有学习打卡读者群,很棒!

    书籍介绍

    编辑推荐

    入门级数据分析师系列”前两本书《对比Excel,轻松学习Python 数据分析》和《对比Excel,轻松学习SQL 数据分析》深受读者欢迎,截至2021年8月,累计销量近15万册。这本书《对比Excel,轻松学习Python 报表自动化》继承了比较学习的特点,帮助职场新人使用Python实现报表自动化,大大提高工作效率。

    内容简介

    这本书《对比Excel,轻松学习Python 报表自动化》继承了比较学习的特点全书围绕Excel功能区的各个模块展开通过对比Excel很容易详细说明如何在各个模块中实现对应的Python代码、快速帮助职场人实现报表自动化,提高工作效率。本书主要分为四个部分:第一部分介绍Python的基础知识,让读者了解Python中一些常见的操作和概念;第2部分介绍了与格式相关的设置方法,包括字体设置、条件格式等;第3部分介绍了各种类型的函数;第4部分介绍了与自动化相关的其他技能,例如自动邮件发送、自动打包等操作。

    目录

    • 第1部分Python基础
    • 第1章认识自动化报表/2
    • 第2章Python基础知识/5
    • 第2部分格式设置
    • 第3章用Python对报表进行基本操作/52
    • 第4章用Python实现单元格选择和字体设置/63
    • 第5章用Python设置Excel对齐方式/76
    • 第6章用Python设置Excel数字、条件格式/86
    • 第7章用Python设置Excel单元格/105
    • 第8章用Python对Excel进行编辑/113
    • 第3部分函数
    • 第9章用Python实现Excel中的函数计算/118
    • 第4部分自动化报表
    • 第10章审阅和视图设置/210
    • 第11章用Python绘制Excel图表/216
    • 第12章用Python对Excel文件进行批量操作/231
    • 第13章自动发送邮件/239
    • 第14章将Python代码转化为可执行的程序/245
    • 第15章工作中的报表自动化实战/249
    精选笔记:python 使用xlsxwriter循环向excel中插入数据和图片的操作

    11小时54分钟前回答

    写入Excel中后有显示第一列客户款号总库存这些,开始写在第12行第一列开始写入,一行写入5个,然后再隔12行,再写入下边的数据,图片需要对应客户款号在Excel写入图片,类似下面的格式

    import xlsxwriter
    import os
    #以空字符填充缺失值,不然写入数据会报错
    data.fillna('',inplace=True)
    #创建一个新Excel文件并添加一个工作表。
    workbook = xlsxwriter.Workbook('images.xlsx')
    worksheet = workbook.add_worksheet()
    # # 加宽第2列,,根据图片缩放大小进行调整。
    worksheet.set_column('B:B', 20)
    worksheet.set_column('D:D', 20)
    worksheet.set_column('F:F', 20)
    worksheet.set_column('H:H', 20)
    ##写入数据和图片
    for i in range(len(data)):
      for j in range(4):
        worksheet.write(i//5*16+j+12,i%5*2 ,['客户款号','总库存','零售数量','前一周'][j])
        worksheet.write(i//5*16+j+12,i%5*2+1 ,data.iloc[i,0::].values[j])
        #插入图片,insert_image(位置行,位置列,文件名,缩放比例)
      if data.iloc[i,0::].values[0]+'.jpg' not in os.listdir('.\img\\'):
        print(i,'找不到',data.iloc[i,0::].values[0]+'.jpg')
      else:
        worksheet.insert_image(i//5*16,i%5*2+1,'img/'+data.iloc[i,0::].values[0]+'.jpg',{'x_scale': 0.1, 'y_scale': 0.12}) 
        print(i,'写入成功!')
      i+=1
    workbook.close()
    
    0 写入成功!
    1 写入成功!
    2 找不到 N038400237.jpg
    3 找不到 N038400301.jpg
    4 找不到 N039400310.jpg
    5 找不到 N038400552.jpg
    6 写入成功!
    7 找不到 N038401101.jpg
    8 找不到 N039400105.jpg
    9 找不到 N039400219.jpg

    效果如下:

    当然还有合并单元格,设置单元格格式,以及处理图片的操作没写,有时间再来补充!

    补充:python对excel表格处理需要导入相关的库:

    (1)、操作xls格式的表格文件:

    读取:xlrd

    写入:xlwt

    修改(追加写入):xlutils

    (2)、操作xlsx格式的表格文件:

    读取/写入:openpyxl

    *如果用操作xls的方法去写入xlsx文件,会导致文件损坏无法打开;反之一样。

    (一)、操作xls格式表格

    1、读取excel表格数据

    import xlrd  #从excle里读数据
    import xlwt  #创建新的表格写入数据
    import xlutils #往已有表格中追加数据
     
    class IOExcel(object):
      def __init__(self,file):
        self.file = file
     
      def get_sheet(self,sheetname):
        excelfile=xlrd.open_workbook(self.file)
        self.sheet = excelfile.sheet_by_name(sheetname)
        return self.sheet
      #获取第*行的数据
      def get_rowData(self,row):
        cols = self.sheet.ncols  #获取sheet页有多少列
        Cells = []
        for i in range(0,cols):
          Cells.append(self.sheet.cell(row,i).value)
        return Cells

    2、创建表格写入数据

    def write_excel(self,sheet_name, value):
      index = len(value) # 获取需要写入数据的行数
      workbook = xlwt.Workbook() # 新建一个工作簿
      sheet = workbook.add_sheet(sheet_name) # 在工作簿中新建一个表格
      for i in range(0, index):
        for j in range(0, len(value[i])):
          sheet.write(i, j, value[i][j])   #向表格中写入数据(对应的行和列)
      workbook.save(self.file)   # 保存工作簿

    3、向已存在表格中追加数据

    def write_excel_xls_append(self,value):
      index = len(value) # 获取需要写入数据的行数
      workbook = xlrd.open_workbook(self.file) # 打开工作簿
      sheets = workbook.sheet_names() # 获取工作簿中的所有表格
      worksheet = workbook.sheet_by_name(sheets[0]) # 获取工作簿中所有表格中的的第一个表格
      rows_old = worksheet.nrows # 获取表格中已存在的数据的行数
      new_workbook = copy(workbook) # 将xlrd对象拷贝转化为xlwt对象
      new_worksheet = new_workbook.get_sheet(0) # 获取转化后工作簿中的第一个表格
      for i in range(0, index):
        for j in range(0, len(value[i])):
          new_worksheet.write(i+rows_old, j, value[i][j]) # 追加写入数据,注意是从i+rows_old行开始写入
      new_workbook.save(self.file) # 保存工作簿

    (二)、操作xlsx格式表格

    wb = openpyxl.Workbook()  #创建一个新的excel
    we = wb.create_sheet('第二页',0) #修改sheet页的名字;设置插入sheet页的位置,默认在上一页后面( 初始创建的excel是只有一个默认sheet页的,所以设置位置的值大于1效果都一样,都是在默认sheet页的后面接着)
    # we.title = '你好' # 修改sheet页的名字
    #操作单元格
    we['A1']=123124
    we['B2']='你好'
    print(we.cell(1,2,'123123').value)  #设置cell的行号和列号和值,返回cell的值
    wb.save('C:\\Users\\t_ful\\PycharmProjects\\test\\element\\t.xlsx')  #保存表格
    

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持码农之家。如有错误或未考虑完全的地方,望不吝赐教。

    相关声明:

    对比Excel,轻松学习Python报表自动化 由用户 姚舒畅 于 2022-01-01 12:50:01 整理编辑,版权归电子工业出版社所有。仅供想学习Python自动化的网友交流使用,专题参考:excelpython报表自动化,Python自动化,

    Python自动化书籍

    读书笔记

    15小时20分钟前回答

    python实现读Excel写入.txt的方法

    因为今天要用到把Excel中的数据写入到.txt文件中,所以简单的写了个代码: import numpy as np import xlrd #打开excel文件 data= xlrd.open_workbook('./sudata/ng.xls')#打开Excel文件读取数据 sh=data.sheet_by_name("Sheet1")##通过工作簿名称获取 print sh.nrows#行数 5820 print sh.ncols#列数 2 n=0 i=0 file=open("ng.txt","w") for n in range(sh.nrows): for i in range(sh.ncols): text=sh.cell_value(n,i).encode('utf-8') file.write(text) file.write('\n') 以上这篇python实现读Excel写入.txt的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。 ……

    21小时46分钟前回答

    关于Python 解决Python3.9 pandas.read_excel(‘xxx.xlsx‘)报错的问题

    问题描述 使用pandas库的read_excel()方法读取外部excel文件报错, 截图如下 好像是缺少了什么方法的样子 问题分析 分析个啥, 水平有限, 直接面向stackoverflow编程 https://stackoverflow.com/questions/64264563/attributeerror-elementtree-object-has-no-attribute-getiterator-when-trying 我找到了下面的这几种说法 根据国外大神的指点, 我得出了这些结论: pandas库读取excel文件是需要安装xlrd模块的, 也就是它 默认是引擎engine是xlrd (之前已经手动pip3安装过), 使用Anaconda会把这些模块都安装上, 可是我没用Anaconda, 而是直接pip3 install pandas, 导致了很多其他模块需要自己安装. 但是安装了xlrd并不能解决问题, 因为我用的Python3.9, xlrd还没有对py3.9做相应的……