【Python】Excel-3
1、 导入Excel模块:from openpyxl import Workbook 2、 创建Excel对象:wb=Workbook() 3、 创建sheet:ws1=wb.create_sheet(“name”) 4、 指定位置创建某个sheet:ws1=create_sheet(“name”,0) 5、 修改sheet名字:ws1.title=”new name”;中文名字ws1.title=u”new name” 6、 设定sheet背景属性ws1.sheet_properties_tabColor=”108888” 7、 获取某个sheet对象:wb[“sheet name”] 8、 获取全部sheet的名字:wb.sheetnames或wb.get_sheet_names() 返回的是一个list 9、 复制一个sheet:wb.copy_worksheet(wb[“sheet name”]) 10、 给固定单元格赋值: (1) ws1[“A1”]=3.1415 (2) ws1[“B2”]=”王某某” (3) ws1.cell(row=4,column=2,value=10) 11、 获取某个单元格的值 (1) ws1[“A1”].value (2) ws1.cell(row=4,column=2,value=10).value 12、 获取某一列的值 (1) ws1[“A”];ws1[“A:C”]为获取A到C列的值 (2) for cell in ws1[“A”]:print cell.value 13、 获取某几行的值 (1) ws1[1:3] (2) for row in ws[1:3]:print row.value 14、 获取某几行几列的值 for row in ws1.iter_rows(min_row=1,min_col=1,max_col=3,max_row=3): for cell in row: print cell.value 15、 获取所有行:ws1.rows 16、 获取所有列ws1.columns 17、 保存Excel:wb.save(“e:\\test4\\sample.xlsx”) 18、 打开Excel文件: import xlrd data=xlrd.open_workbook(“e:\\test4\\sample.xlsx”) 19、 写入excel文件内容如果是中文不需要加”u”,创建sheet名称时如果是中文需要加”u” #练习:创建一个excel,第一行是1,2,3,第二行是4,5,6,第三行是7,8,9,保存在磁盘上,然后并且把每一个值读出来,并输出 from openpyxl import Workbook wb=Workbook() ws1=wb.create_sheet(u"某某") i=1 for m in range(1,4): for n in range(1,4): ws1.cell(row=m,column=n,value=i) i+=1 for m in range(1,4): for n in range(1,4): print ws1.cell(row=m,column=n).value for column in ws1["A:C"]: for cell in column: print cell.value wb.save("e:\\test4\\s2.xlsx") #练习:显示小数或百分数 from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('e:\\test4\\s2.xlsx') wb.guess_types = True #这个的意思是只获取第一个sheet ws=wb.active ws["D1"]="12%" print ws["D1"].value wb.save("e:\\test4\\s2.xlsx") #练习: from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('e:\\test4\\s2.xlsx') ws=wb.active rows=[] for row in ws.iter_rows(): rows.append(row) print rows #所有行,存的是每一行的对象 print rows[0] #获取第一行 print rows[0][0] #获取第一行第一列的单元格对象 print rows[0][0].value #获取第一行第一列的单元格对象的值 print rows[len(rows)-1] #获取最后行 print rows[len(rows)-1][len(rows[0])-1] #获取第后一行和最后一列的单元格对象 print rows[len(rows)-1][len(rows[0])-1].value #获取第后一行和最后一列的单元格对象的值 #练习: from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('e:\\test4\\s2.xlsx') ws=wb.active cols=[] for col in ws.iter_cols(): cols.append(col) print cols #所有列 print cols[0] #获取第一列 print cols[0][0] #获取第一列的第一行的单元格对象 print cols[0][0].value #获取第一列的第一行的值 print "*"*30 print cols[len(cols)-1] #获取最后一列 print cols[len(cols)-1][len(cols[0])-1] #获取最后一列的最后一行的单元格对象 print cols[len(cols)-1][len(cols[0])-1].value #获取最后一列的最后一行的单元格对象的 #练习:判断类型 from openpyxl import Workbook from openpyxl import load_workbook import datetime wb = load_workbook('e:\\test4\\s2.xlsx') ws=wb.active wb.guess_types = True ws["A1"]=datetime.datetime(2010, 7, 21) print ws["A1"].number_format ws["A2"]="12%" print ws["A2"].number_format ws["A3"]= 1.1 print ws["A4"].number_format ws["A4"]= "中国" print ws["A5"].number_format # Save the file wb.save('e:\\test4\\s2.xlsx') #练习:Excel中用公式 from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('e:\\test4\\s2.xlsx') ws1=wb.active ws1["A1"]=1 ws1["A2"]=2 ws1["A3"]=3 ws1["A4"] = "=SUM(1, 1)" ws1["A5"] = "=SUM(A1:A3)" #这里打印的是Excel的公式,而不是公式计算后的结果 print ws1["A4"].value #打印的是公式内容,不是公式计算后的值,程序无法取到计算后的值 print ws1["A5"].value #打印的是公式内容,不是公式计算后的值,程序无法取到计算后的值 # Save the file wb.save('e:\\test4\\s2.xlsx') #练习:合并单元格 from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('e:\\test4\\s2.xlsx') ws1=wb.active from openpyxl.workbook import Workbook wb = Workbook() ws = wb.active ws.merge_cells('A2:D2') #合并单元格,值不保留 #ws.unmerge_cells('A2:D2') #不合并单元格 # or equivalently ws.merge_cells(start_row=2,start_column=1,end_row=2,end_column=4) #ws.unmerge_cells(start_row=2,start_column=1,end_row=2,end_column=4) # Save the file wb.save('e:\\test4\\s2.xlsx') #练习:隐藏列 from openpyxl import load_workbook from openpyxl.drawing.image import Image wb = load_workbook('e:\\test4\\s2.xlsx') ws1=wb.active ws1.column_dimensions.group('A', 'D', hidden=True) #隐藏a到d列范围内的列 # Save the file wb.save('e:\\test4\\s2.xlsx') #练习:生成柱状图 from openpyxl import load_workbook from openpyxl import Workbook from openpyxl.chart import BarChart, Reference, Series wb = load_workbook('e:\\test4\\s2.xlsx') ws1=wb.active wb = Workbook() ws = wb.active for i in range(10): ws.append([i]) values = Reference(ws, min_col=1, min_row=1, max_col=1, max_row=10) chart = BarChart() chart.add_data(values) ws.add_chart(chart, "E15") # Save the file wb.save('e:\\test4\\s2.xlsx')
【Python】Excel-3的更多相关文章
- 【Python】excel读写操作 xlrd & xlwt
xlrd ■ xlrd xlrd模块用于读取excel文件内容 基本用法: workbook = xlrd.open_workbook('文件路径') workbook.sheet_names() # ...
- 【Python】Excel操作-2 (07版本以下Excel操作,其实不怎么用了,麻蛋,预习了2天课间才发现,还说怎么跟老师讲的不一样)
#保存修改Excel import xlrd from xlutils.copy import copy #打开Excel文档并将内容读取到内存 readbook=xlrd.open_workbook ...
- 【Python】Excel操作-1
#练习:创建Excel 如果要创建的Excel已经存在并打开,会报错 from openpyxl import Workbook wb=Workbook() #创建文件对象 ws=wb.active ...
- 【Python】Excel数据处理
1.环境准备 > python2.7 > xlrd,xlwt模块下载与安装,前者用来读取excel文件,后者用来写入excel文件 2.实战案例 案例场景: > excel1中包含某 ...
- 【Python】Excel处理
1.包导入 from openpyxl import Workbook from openpyxl import load_workbook from openpyxl.compat import r ...
- 【Python②】python之首秀
第一个python程序 再次说明:后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 安装配置好python后,我们先来写第一个python程序.打开IDLE (P ...
- 【python】多进程锁multiprocess.Lock
[python]多进程锁multiprocess.Lock 2013-09-13 13:48 11613人阅读 评论(2) 收藏 举报 分类: Python(38) 同步的方法基本与多线程相同. ...
- 【python】SQLAlchemy
来源:廖雪峰 对比:[python]在python中调用mysql 注意连接数据库方式和数据操作方式! 今天发现了个处理数据库的好东西:SQLAlchemy 一般python处理mysql之类的数据库 ...
- 【python】getopt使用
来源:http://blog.chinaunix.net/uid-21566578-id-438233.html 注意对比:[python]argparse模块 作者:limodou版权所有limod ...
- 【Python】如何安装easy_install?
[Python]如何安装easy_install? http://jingyan.baidu.com/article/b907e627e78fe146e7891c25.html easy_instal ...
随机推荐
- 7. 反转整数(Reverse Integer) C++
知识点: 内置变量 INT_MAX INT_MIN 运算结果是否溢出的判断 判断pop>7即pop>INT_MAX%10 判断pop<-8即pop<INT_MIN%10 c ...
- nginx是什么,如何使用
一:nginx是什么? 二:nginx作为网关,需要具备什么?(nginx可以作为web服务器,但更多的时候,我们把它作为网关,因为它具备网关必备的功能:) 反向代理(反向代理就是服务器找来一个机器代 ...
- zzw原创_根据某一文件复制出大量固定位数后缀名的递增的文件
1.trre.sh :根据某一文件复制出大量固定位数后后缀递增的文件. 如将 SPINFO_190516_20170109.001 复制成SPINFO_190516_20170109.002 ...
- MapReduce分布式算法
一.MapReduce 有一种特殊的并行算法,就是分布式算法.在并行算法只需要两个到四个内核时,完全可以在笔记本电脑上运行,但是如果需要数百个内核,这种情况下,可让算法在多台计算机上运行. 假设你有一 ...
- java集合类,详解
集合详解 1.1HashSet HashSet是Set接口的一个子类,主要的特点是:里面不能存放重复元素,而且采用散列的存储方法,所以没有顺序.这里所说的没有顺序是指:元素插入的顺序与输出的顺序不一致 ...
- sigmoid belief network boltszmann machine
because of explaining away, the hidden weights in sigmoid belief network is no longer independent
- zabbix3.4.7之Zabbix_Trigger_Function详解
Trigger函数 1.abschange 参数:直接忽略后边的参数 支持值类型:float.int.str.text.log 描述:返回最近获取到的值与之前值的差值的绝对值.对于字符串类型,0表示值 ...
- 蓝桥杯—BASIC-27 2n皇后问题(DFS)
问题描述 给定一个n*n的棋盘,棋盘中有一些位置不能放皇后.现在要向棋盘中放入n个黑皇后和n个白皇后, 使任意的两个黑皇后都不在同一行.同一列或同一条对角线上,任意的两个白皇后都不在同一行. 同一列或 ...
- php 图片添加水印和二维码
$host = $_SERVER['HTTP_HOST']; $save_code_file = './qrcodes/qrcode.png'; QrCode::format()->backgr ...
- 【JAVA】关于向上转型与向下转型
向上转型: 子类引用的对象转换为父类类型称为向上转型.通俗地说就是是将子类对象转为父类对象.此处父类对象可以是接口 如果子类重写了父类的方法,就根据这个引用指向调用子类重写的这个方法,不是调用父类的, ...