python自带xlrd和xlwt模块用来处理excel,但总觉得xlwt模块用着别扭,于是按自己的习惯重新封装了一个

 # coding=utf-

 import xlrd   # 读模块
import xlwt # 写模块 def read_excel():
"""
读取excel文件方法说明(此函数只是对xlrd用法的说明,看看就好。xlrd已经很好用了)
:return:
"""
# 打开excel文件
data = xlrd.open_workbook('123.xls') # 获取文件内的表名
print(data.sheet_names()) # 获取指定表的两种方法
sh = data.sheet_by_index() # 索引法
sh = data.sheet_by_name(u'Sheet1') # 表名法 # 获取表的行数
print(sh.nrows)
# 获取表的列数
print(sh.ncols) # 获取第29行的数据(0算第一行)
print(sh.row_values())
# 获取第2列的数据(0算第一列)
print(sh.col_values())
# 获取第1行、第2列的数据(相当于坐标)
print(sh.cell(, ).value) def write_excel(sheet_name, row0, datas, file_name):
"""
自己重新封装的写入excel表模块。以后要将数据写入excel直接调用此函数就行。此函数简单干净,使用方便。
:param sheet_name: excel文件内的表名。例:Sheet1
:param row0: 表内第一行的内容,为一个列表。例:[id, name, sex]
:param datas: 实际要写入表内的数据,为一个列表,里面包含几个元素就写几行数据,其中每一个元素又为一个列表,里面对应这一行
每列的值。例:[[, '小龙女', 'girl'], [, '杨过', 'boy'], [, '周伯通', 'boy']]
:param file_name: 最终生成的excel文件名。例:'test.xls'
:return:
"""
# 创建一个写对象实例
f = xlwt.Workbook() # 创建一个叫sheet_name的表名
sheet1 = f.add_sheet(sheet_name, cell_overwrite_ok=True) # 创建表sheet_name的第一行(即标题)
for i in range(, len(row0)):
sheet1.write(, i, row0[i]) # 从第二行开始写数据,datas有多少元素就写多少行
for row in range(, len(datas) + ):
# 遍历每行的每一列,row0有多少元素就遍历多少列
for col in range(len(row0)):
# 有了上面row,col提供的行号和列号就可以精确匹配一个单元格了,下面就开始往单元格里写数据了
# row:行号,col:列号,datas[row-][col]:数据
# 注:datas这个列表里一个元素为一行,由于是从第二行开始写的,所以想要取datas的第一个元素需row-
# 注:datas这个列表里一个元素(列表)里的元素对应这行每列的值。
# 例:[, '小龙女', 'girl'],1对应第1列的值,'小龙女'对应第2列的值,'girl'对应第三列的值
sheet1.write(row, col, datas[row-][col]) f.save(file_name)
print('已生成excel文件!') if __name__ == '__main__':
read_excel()
write_excel(
sheet_name='students',
row0=['id', 'name', 'sex'],
datas=[[, '小龙女', 'girl'], [, '杨过', 'boy'], [, '周伯通', 'boy']],
file_name='test.xls'
)

python简单处理excel方法的更多相关文章

  1. python简单操作excel

    python操作excel 写入excel # 写入excel import xlwt # 创建xls对象 wb = xlwt.Workbook() # 新增两个表单页(sheet1) sh1 = w ...

  2. Python简单计算数组元素平均值的方法示例

    Python简单计算数组元素平均值的方法示例 本文实例讲述了Python简单计算数组元素平均值的方法.分享给大家供大家参考,具体如下: Python 环境:Python 2.7.12 x64 IDE ...

  3. Python简单遍历字典及删除元素的方法

    Python简单遍历字典及删除元素的方法 这篇文章主要介绍了Python简单遍历字典及删除元素的方法,结合实例形式分析了Python遍历字典删除元素的操作方法与相关注意事项,需要的朋友可以参考下 具体 ...

  4. Python简单爬虫入门三

    我们继续研究BeautifulSoup分类打印输出 Python简单爬虫入门一 Python简单爬虫入门二 前两部主要讲述我们如何用BeautifulSoup怎去抓取网页信息以及获取相应的图片标题等信 ...

  5. Delphi中使用python脚本读取Excel数据

    Delphi中使用python脚本读取Excel数据2007-10-18 17:28:22标签:Delphi Excel python原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...

  6. python中读写excel并存入mysql

    为了一个突如其来的想法:用python简单解决就好.现在算是把这个项目需要的基础功能坑都填完了.剩下就是AI和数据展示方面的坑了. 今天遇到的坑是: 1.从excel读出的中文是乱码 2.中文写入my ...

  7. Python读写操作Excel模块_xlrd_xlwt_xlutils

    Python 读写操作Excel -- 安装第三方库(xlrd.xlwt.xlutils.openpyxl) 如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行 ...

  8. python简单面试题

    在这个即将进入金9银10的跳槽季节的时候,肯定需要一波面试题了,安静总结了一些经常遇到的python面试题,让我们一起撸起来. python面试题 1.求出1-100之间的和 # coidng:utf ...

  9. Python“文件操作”Excel篇(上)

    大家好,我们今天来一起探索一下用Python怎么操作Excel文件.与word文件的操作库python-docx类似,Python也有专门的库为Excel文件的操作提供支持,这些库包括xlrd.xlw ...

随机推荐

  1. NLP入门(十一)从文本中提取时间

      在我们的日常生活和工作中,从文本中提取时间是一项非常基础却重要的工作,因此,本文将介绍如何从文本中有效地提取时间.   举个简单的例子,我们需要从下面的文本中提取时间: 6月28日,杭州市统计局权 ...

  2. Java方法之重载

    Java方法之重载 本篇探究Java中的方法重载.那么,什么是重载呢?先上一串代码: package com.my.pac06; /** * @author Summerday * @date 201 ...

  3. Python高级特性——切片(Slice)

    摘录廖雪峰网站 定义一个list: L = ['haha','xixi','hehe','heihei','gaga'] 取其前三个元素: >>> L[0],L[1],L[2] (' ...

  4. springboot中使用aop技术

    aop是面向切面编程的意思,它可以需要先选择一些切入点,然后对这些切入点进行拦截,注入统一的代码逻辑,这也是解耦的一种方式,也是为了避免重复的代码,让开发人员把关注点放在业务上. 引用包 'org.s ...

  5. 从0系统学Android--3.1编写UI界面

    从0系统学Android--3.1编写UI界面 本系列文章目录:更多精品文章分类 本系列持续更新中.... 界面设计和功能开发同样重要,界面美观的应用程序不仅可以大大增加用户粘性,还能帮我们吸引到更多 ...

  6. Violet音乐社区 - 个人总结报告

    一.项目概述 1.1 项目背景 音乐是一门艺术,是由有组织的乐音来表达人们情感.反映人类现实生活情感的艺术.现代科技的发展使得人们可以利用网络随时随地的享受音乐,然而在当今互联网却很少有一个以音乐为媒 ...

  7. 【Java基础】接口和抽象类之间的对比

    Java 中的接口和抽象类之间的对比 一.接口 Interface,将其翻译成插座可能就更好理解了.我们通常利用接口来定义实现类的行为,当你将插座上连接笔记本的三角插头拔掉,换成微波炉插上去的时候,你 ...

  8. 工具-Xmind常用快捷键/使用

    1-快捷键 Ctrl+Shift+L 快捷键助手 Ctrl+Home 返回中心主题 Ctrl+] 插入摘要 Ctrl+I 插入图片 Ctrl+Shift+H 插入超链接 Ctrl+1,2,3,4,5, ...

  9. Linux基础命令---ntpstat显示时间服务器同步

    ntpstat ntpstat指令用于显示本机上一次和服务器同步时间的情况. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.   1.语法 ntpstat   2 ...

  10. 快速排序 Vs. 归并排序 Vs. 堆排序——谁才是最强的排序算法

    知乎上有一个问题是这样的: 堆排序是渐进最优的比较排序算法,达到了O(nlgn)这一下界,而快排有一定的可能性会产生最坏划分,时间复杂度可能为O(n^2),那为什么快排在实际使用中通常优于堆排序? 昨 ...