2.4.5 Python存储之表格

原创 2018年04月16日 14:48:21
提到表格,肯定会首先想到Excel;其实,除了微软的电子表格,在Linux系统中也有很好的电子表格,Google也提供了不错的在线电子表格。从历史到现在,电子表格都有很广泛的用途。所以,Python也要操作一番电子表格,因为有些数据,就是存在于电子表格中。
1,openpyl
openpyl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel 2010 xlsx/xlsm/xltx/xltm的文件的读写的第三方库。
安装(打开shell模块):
C:\Windows\system32>pip install openpyxl
workbook和sheet
Workbook提供的方法如下:
active:获取当前活跃的Worksheetworksheets:以列表的形式返回所有的Worksheet(表格)read_only:判断是否以read_only模式打开Excel文档encoding:获取文档的字符集编码properties:获取文档的元数据,如标题,创建者,创建日期等sheetnames:获取工作簿中的表(列表)
get_sheet_names:获取所有表格的名称(新版已经不建议使用,通过Workbooksheetnames属性即可获取)get_sheet_by_name:通过表格名称获取Worksheet对象(新版也不建议使用,通过Worksheet[‘表名‘]获取)get_active_sheet:获取活跃的表格(新版建议通过active属性获取)remove_sheet:删除一个表格create_sheet:创建一个空的表格copy_worksheet:在Workbook内拷贝表格
Worksheet提供的方法如下:
title:表格的标题dimensions:表格的大小,这里的大小是指含有数据的表格的大小,即:左上角的坐标:右下角的坐标max_row:表格的最大行min_row:表格的最小行max_column:表格的最大列min_column:表格的最小列rows:按行获取单元格(Cell对象) - 生成器columns:按列获取单元格(Cell对象) - 生成器freeze_panes:冻结窗格values:按行获取表格的内容(数据) - 生成器
(打开交互模式):
>>> from openpyxl import Workbook #引入Workbook 模块
>>> wb = Workbook() #用Workbook()类里面的方法展开工作 wb = Workbook("D://test.xlsx")创建指定文件
>>> ws = wb.active
>>> ws1 = wb.create_sheet() #增加一个sheet
>>> ws.title = "python" #给第一个sheet命名
>>> ws01 = wb['python'] #按名称获取表格的sheet
>>> ws is ws01 #判断是否存在
True
>>> print wb.sheetnames #打印所有sheet
[u'python', u'Sheet1']
>>> for sh in wb: #遍历
print sh.title

python
Sheet1
cell
cell对象提供如下方法:
row:单元格所在的行column:单元格坐在的列value:单元格的值coordinate:单元格的坐标

对于Sheet,其中的cell是它的下级单位。所以,要得到某个cell可以这样:
>>> a1 = ws['A1']
如果A1这个cell已经有了,用这种方法就是将它的值赋给了变量a1;如果sheet中没有这个cell,那么就创建这个cell对象。
注意,当我们打开Excel,默认已经画好了很多cell。但是,在Python操作的电子表格中,不会默认画好那样一个表格,一切都要创建之后才有。所以,如果按照前面的操作流程,上面就是创建了A1这个
cell,并且把它作为一个对象被a1变量引用。
>>> ws['A1'] = 333 #给A1添加数据
>>> a1.value #获取A1的值
333
获取cell对象还可以这样:
>>> cells = ws["A1":"B1":"C1"] #批量获取
>>> ws['A2']=444
>>> ws['B1']="dadasd"
>>> wb.save("D://test.xlsx") #保存文件
读取已知文件
>>> from openpyxl import load_workbook #引入load_workbook模块
>>> wb2 = load_workbook("D://test.xlsx") #打开已知文件
>>> print wb2.sheetnames #获取文件sheel
[u'python', u'Sheet1']
>>> ws_wb2 = wb2["python"]
>>> for row in ws_wb2.rows:
for cell in row:
print cell.value

333
dadasd
444
None
2,其他第三方库
针对表格的第三方库,除了上面这个openpyxl之外还有别的,下面列出几个仅供参考,使用方法大同小异。
xlsxwriter:针对Excel 2010格式,如.xlsx,官方网站:https://xlsxwriter.readthedocs.org/,这个官方文档写得图文并茂。非常好读。
下面两个是用来处理.xls格式的电子表表格:
xlwt:网络文件,http://xlwt.readthedocs.org/en/latest/。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011418530/article/details/79960536

阿里云存储表格存储TableStore-高并发IM系统架构优化实践

文章地址:https://yq.aliyun.com/articles/66461?utm_campaign=66461&utm_medium=images&utm_source=oschina&ut...
  • boonya
  • boonya
  • 2017-01-17 10:31:10
  • 1007

Python 边做边学 9.4 数据库操作--排序条件单元(Qorder)

1. 定义一个“排序条件单元”,提供基础的排序元素;
  • tomorrow13210073213
  • tomorrow13210073213
  • 2017-08-21 18:37:37
  • 141

wireshark使用全解笔记【2.4.5.0版本】

前言 西普教育的铁三训练营的课程有很详细的关于wireshark视频教程,正好对wireshark这款神器也不是太熟悉,一边学习补漏,一边做一个学习笔记与大家分享 页面功能简介 主界面中,...
  • wy_97
  • wy_97
  • 2018-02-26 22:28:20
  • 1615

mongodb2.4.5数据库64位系统

  • 2013年07月20日 20:08
  • 101.29MB
  • 下载

python web数据库mongodb的使用(附下载链接)

今天我们学习,数据库mongodb的使用,最下面有mongodb的下载链接。pip install pymongo首先安装pymongo,然后在需要用到的地方import pymongo#首先链接数据...
  • qq_37561761
  • qq_37561761
  • 2018-02-15 15:13:51
  • 57

2.4.5

#include<iostream> using namespace std; int main(){ char a; cin>>a; cout...
  • balalalalalalala
  • balalalalalalala
  • 2018-03-05 21:31:23
  • 9

python生成带有表格的图片

因为工作中需要,需要生成一个带表格的图片例如:直接在html中写一个table标签,然后单独把表格部分保存成图片或者是直接将excel中的内容保存成一个图片刚开始的思路,是直接生成一个带有table标...
  • mx472756841
  • mx472756841
  • 2016-11-27 11:29:29
  • 4868

opencv-2.4.5.exe

  • 2017年04月19日 20:29
  • 147B
  • 下载

windows下安装redis 2.4.5

1、redis简介 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(...
  • u012385217
  • u012385217
  • 2016-07-12 17:11:24
  • 1599

python OpenCv 2.4.5环境搭建

Download Python, Numpy, OpenCV from their official sites. Extract OpenCV (will be extracted to ...
  • QQ2472322319
  • QQ2472322319
  • 2013-06-18 20:07:56
  • 989
收藏助手
不良信息举报
您举报文章:2.4.5 Python存储之表格
举报原因:
原因补充:

(最多只允许输入30个字)