Excel表格
自己一个一个试出来,并写上解释。
还不熟练,待多写代码多练习。
#!/usr/bin/python
# -*- coding:utf-8 -*- import os
import xlwt
import xlrd excel_Path = (r"D:\python\The company plug-in\10.13.xlsx") data = xlrd.open_workbook(excel_Path) table = data.sheets()[0]
table = data.sheet_by_index(0)
# table = data.sheet_by_name(u"03") a = table.row_values(2) #整行数据
a = table.col_values(4) #整列数据
# for i in a:
# print i.encode("gb2312") #表格读取中文是要加这个进行转码 # nrows = table.nrows
# ncols = table.nclos
def set_style(name, height, bold=False):
style = xlwt.XFStyle() #初始化样式
font = xlwt.Font() #为样式创建字体
font.name = name #"Times New Roman"
font.bold = bold
font.color_index = 4
font.height = height style.font = font
return style def write_excel():
f = xlwt.Workbook() #创建工作薄
"""
创建工作薄
"""
sheet1 = f.add_sheet(u"sheet1", cell_overwrite_ok=True) #创建sheet
row0 = [u"业务", u"状态", u"北京", u"上海", u"广州", u"深圳",u"状态小计", u"合计"] #列 输入内容列表
column0 = [u"机票", u"船票", u"火车票", u"汽车票", u"其它"]
status = [u"预定", u"出票", u"退票", u"业务小计"]
for i in range(0, len(row0)):
sheet1.write(0, i, row0[i], set_style("Times New Roman", 300, True))#1:竖着坐标 2:横着坐标 3:写入内容 4:设置字体和字体大小
# sheet1.write_merge(1, 1, 6, 6)#5
# sheet1.write_merge(1, 3, 6, 6)#6 # ()括号里的数值 分别为 1: 2:竖着数几行 3:
# sheet1.write_merge(1, 5, 5, 6)# 7 # ()括号里的数值 分别为 1: 2:竖着数几行 3和4:从那列到那列进行合并
# sheet1.write_merge(0, 5, 5, 6)# 8 # ()括号里的数值 分别为 1:竖着从第几行开始 2:竖着数几行格式化 3和4:从那列到那列进行合并 i, j = 1, 0
while i < 4 * len(status) and j < len(column0):
# print "yes"
sheet1.write_merge(i, i + 3, 0, 0, column0[j], set_style("Times New Roman", 250, True))
#分别为 1:竖着从第几行开始 2:竖着数几行格式化 3和4:从那列到那列进行合并 5:写入内容 6:设置字体和大小
sheet1.write_merge(i, i + 3, 7, 7,) # 最后一列"合计"
i += 4
j += 1
i = 0
while i < len(status) * len(status):
for a in status:
# print status[i]
sheet1.write(i + 1, 1, a, set_style("Times New Roman", 200, True))
i += 1
print i
sheet1.write_merge(23, 23, 0, 1, row0[7], set_style("Times New Roman", 300, True)) f.save("test23.xlsx") # #生成第一行
#
# for i in range(0, len(row0)):
# # print (0, i, row0[i], set_style("Times New Roman", 220, True))
# sheet1.write(0, i, row0[i], set_style("Times New Roman", 220, True))
#
# #生成第一列和最后一列(合并4行)
# i, j = 1, 0
# while i < 4 * len(column0) and j < len(column0):
# sheet1.write_merge(i, i+3, 0, 0, column0[j], set_style("Arial", 220, True)) #第一列
# sheet1.write_merge(i, i + 3, 7, 7,) #最后一列"合计"
# i += 4
# j += 1
# sheet1.write_merge(21, 21, 0, 1, u"合计", set_style("Times New Roman", 220, True))
#
# #生成第二列
# i = 0
# while i < 4 * len(column0):
# for j in range(0, len(status)):
# sheet1.write(j + i + 1, 1, status[j])
# i += 4
# f.save("demo1.xlsx") #保存文件
#
if __name__ == "__main__": # 测试,判断是不是被人导入,被人当模块使用的时候 就等于文件名
#generate_workbook()
#read_rxcel()
write_excel() # for i in os.listdir(excel_Path):
# if "20170602_A" in i:
# j = os.path.join(excel_Path, i)
# # k = xlrd.open_workbook(j)
# print j
Excel表格的更多相关文章
- Python处理Excel表格
同事小王今天说他有一个Excel表格,表格如下,一列是姓名,一列是电话号码,总共有大概2000行数据. 有的姓名占了一行,有的占了两行,还有一些占了三行的.如下图: 他问我可不可以全部统一成一行,而且 ...
- PHP导入导出excel表格图片(转)
写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wp ...
- nodejs+edatagrid读取本地excel表格
- C# 将excel表格嵌入到Word中
C# 将excel表格嵌入到Word中 继续开扒,今天要实现的是使用C#将excel表格嵌入到Word中这个功能,将word表格导入到excel中我已经写过了,如有需要可参考我之前的文章,在开始前还有 ...
- C# 在excel表格中检索并导出数据
由于工作需要,我经常使用excel文档来存储和处理各种数据,在生活中偶尔也会使用excel表格来记录各种开销,相信很多朋友也和我一样.Excel的功能很强大,其中一个很实用的数据处理功能就是查找和替换 ...
- php导入excel表格
我们做网站的时候经常要用到excel导入和导出的功能,我们通常的做法是用phpexcel工具包来完成,具体方法如下: html代码: <form action="{:U('Mall/u ...
- php网址显示excel表格内容
/** * excel表格内容在网页中显示 * * 首先需要下载PHPExcel 工具包 * 网址: http://phpexcel.codeplex.com/releases/view/119187 ...
- 简单Excel表格上传下载,POI
一.废话 Excel表格是office软件中的一员,几乎是使用次数最多的办公软件.所以在java进行企业级应用开发的时候经常会用到对应的上传下载便利办公. 目前,比较常用的实现Java导入.导出Exc ...
- jxl读取Excel表格数据
调用jxl包实现Excel表格数据的读取,代码如下: import java.io.File; import java.io.IOException; import java.util.ArrayLi ...
- C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel
其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(obj ...
随机推荐
- LeetCode241——Different Ways to Add Parentheses
Given a string of numbers and operators, return all possible results from computing all the differen ...
- Bing Maps进阶系列五:通过DeepEarth的MiniMap控件为Bing Maps扩展迷你小地图
Bing Maps进阶系列五:通过DeepEarth的MiniMap控件为Bing Maps扩展迷你小地图 Bing Maps Silverlight Control虽然为我们提供了简洁.方便的开发模 ...
- Codeforces--14D--Two Paths(树的直径)
Two Paths Time Limit: 2000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Submit ...
- [python基础] csv.wirterow()报错UnicodeEncodeError
python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错,python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一 ...
- 71.Ext.form.ComboBox 完整属性
转自:https://blog.csdn.net/taotaoqi/article/details/7409514 Ext.form.ComboBox 类全称: Ext.form.ComboBox 继 ...
- 使用 Jenkins + GitHub + Nginx + HTTPS 搭建静态网站
参考https://www.imooc.com/article/20079 http://www.haoduoyu.cc/
- jquery得到焦点和失去焦点
鼠标在搜索框中点击的时候里面的文字就消失了,经常会用到搜索框的获得焦点和失去焦点的事件,接下来介绍一下具体代码,感兴趣的朋友额可以参考下 input失去焦点和获得焦点 鼠标在搜索框中点击的时候里面 ...
- php中strlen,mb_strlen,count之区别
转自 http://www.cnblogs.com/mo-beifeng/archive/2011/08/09/2133039.html 这不是一个固定的数字.本文简要说明一下限制规则. strlen ...
- [Swift通天遁地]五、高级扩展-(6)对基本类型:Int、String、Array、Dictionary、Date的扩展
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- mysql复制数据
前言:由于工作需要,我要造大量数据,最好的方法是直接copy已有的数据,改其中一些值即可.操作的表有主键,且自增,AUTO_INCREMENT 按照以往的经验无外乎: 类别一. 如果两张张表(导出表和 ...