# coding: UTF-8
from pyExcelerator.ImportXLS import parse_xls
from pyExcelerator import Workbook
import string
class ExcelHandler():
#读取excel文件的内容,返回一个包含行列的集合
#@param file_full_name:
#@return: sheet_list[[0,[a,a,a]],[1,[b,b,b]],[2,[c,c,c]],[3,[d,d,d]]]
def read_xls(self, file_full_name):
results = []
#获得excel的所有"谢特"
sheets = parse_xls(file_full_name)
#迭代"谢特"-----------"谢特"[0]是"谢特"的名字."谢特"[1]是内容
for t in range(len(sheets)):
sheet = sheets[t]
result = []
#获得谢特[1]的长度,即,列数乘以行数的值
#已知有13个列,根据这个谢特[1]的长度得到一共有多少行
length = len(sheet[1]) / 13
#先创建一个满足excel格数的空数组
for ti in range(length + 1): #@UnusedVariable
result.append([" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " "])
#迭代该谢特中的单元格,按照坐标插入到结果集中
for point in sheet[1]:
str_point = str(point)
#从谢特中获得行和列
_x = string.atoi(str_point.replace(" ", "").split(',')[0].replace("(", ""))
_y = string.atoi(str_point.replace(" ", "").split(',')[1].replace(")", ""))
try:
if (str(_y) == '12') | (str(_y) == '1') | (str(_y) == '2') | (str(_y) == '4') | (str(_y) == '7'):
if unicode(sheet[1][point]).find(".0") >= 0:
result[_x][_y] = unicode(sheet[1][point]).replace(".0", "")
continue;
result[_x][_y] = unicode(sheet[1][point])
except:
print str(_x)+","+str(_y)+"---"+str(len(result))+"---"+str(t)
results.append([sheet[0], result])
return results
#根据一个包含所有谢特的集合生成Excel文件
#@param sheet_list: sheet_list[[0,[a,a,a]],[1,[b,b,b]],[2,[c,c,c]],[3,[d,d,d]]]
#@param save_file_name:
def create_sheet_list(self, sheet_list, save_file_name):
wb = Workbook()
for sheet in sheet_list:
ws = wb.add_sheet(sheet[0])
# 写内容
for i in range(len(sheet[1])):
line = sheet[1][i]
for j in range(len(line)):
item = line[j]
ws.write(i , j, item)
wb.save(save_file_name)
#################
## 测试 读取--导出
#################
#eh = ExcelHandler()
#results = eh.read_xls('./datafiles/finallyLIYIN.xls')
#eh.create_sheet_list(results, "./hehehe.xls")
分享到:
相关推荐
Python 3.11.0-embed-amd64.zip 是一个针对AMD64架构的Python 3.11.0精简版发行包,它包含了一组核心库和运行时支持文件,允许用户在不安装完整Python环境的情况下运行Python程序。这个压缩包特别适合那些需要在没有...
这个嵌入式版本是为那些希望在不安装完整Python环境的情况下运行Python程序的用户设计的。 首先,我们来看一下这个压缩包中包含的关键文件: 1. **python311._pth**:这是一个路径配置文件,它告诉Python解释器在...
这两个文件是Python运行时的核心,用于解析和执行Python代码。 `libcrypto-1_1.dll` 和 `libssl-1_1.dll` 是OpenSSL库的动态链接库文件,用于提供加密和安全套接层(SSL/TLS)协议的支持。这些文件在处理网络通信和...
10. **Python语言参考**:深入解析Python的语法和语义,是理解和使用Python不可或缺的部分。 11. **附录**:包括Python的版本历史、编码规范(PEP 8)和其他有用的资源。 这个PDF文档对于Python学习者和开发者来说...
Python是一种广泛使用的高级编程语言,尤其在Web开发、数据分析、人工智能和自动化等领域有着重要的应用。"python-3.9.10-amd64.exe" 是Python 3.9.10版本针对AMD64架构(也称为x86_64或64位)的Windows操作系统提供...
原来是通过命令行下载的docx安装包还没有完全兼容python3,估计这个安装包还只兼容python 2(python2 和python3差别还是挺大的,虽然现在python 3出来很久了,但是不少三方库还没有更新),因此需要自己找一个兼容的包...
Python_docx是一个强大的库,用于在Python环境中创建、读取和修改Microsoft Word(.docx)文件。这个压缩包“python_docx-0.8.11-py3-none-any.whl.zip”包含了该库的一个特定版本,即0.8.11,适用于Python 3环境。...
auth-ldap,但还依赖python_ldap包,在windows上装这些包费老鼻子劲,csdn上找呢又不全,收分还多贵的,因此找到了之后将python3.7-11的包都给大家提供,不好意思挣点分,因为有些时候我也需要去下载东西,有需要的...
Python是一种广泛使用的高级编程语言,以其易读性、简洁的语法和强大的功能而闻名。Python 3.7.7是该语言的一个稳定版本,提供了许多改进和新特性。本资源"python-3.7.7-docs-pdf-a4.zip"包含了一份详尽的Python ...
python-urlgrabber-3.9.1-11.el6.noarch.rpm
python-3.9.13-amd64.exe windows安装包,x64
Python生成Word文档是编程领域中一个实用的技能,特别是在办公自动化和报告生成的场景中。`python-docx`是一个强大的库,它允许开发者通过Python代码创建、修改和操作Microsoft Word (.docx)文件。`python-docx-...
而这个库则为Python开发者提供了一种与XMind服务交互的方式,使得在Python环境中创建、编辑和上传XMind文件成为可能。 这个库的核心功能主要包括以下几个方面: 1. **文件操作**:能够读取本地的XMind文件,并进行...
python-iniparse-0.3.1-2.1.el6.noarch.rpm
Python 根据用户输入编码批量生成EAN-13条形码 Python源码Python 根据用户输入编码批量生成EAN-13条形码 Python源码Python 根据用户输入编码批量生成EAN-13条形码 Python源码Python 根据用户输入编码批量生成EAN-13...
python-urlgrabber-3.10-8.el7.noarch.rpm资源包,资源包,为什么不能0分……………………
centos7环境下离线安装python-devel需要的rpm文件,网站上下载最新的python-devel版本编译安装失败,从centos7的镜像里拷贝出来的低版本的rpm,测试安装成功。
Python 3.8.10 是 Python 编程语言的一个稳定版本,专为AMD64架构(也称为x86_64或64位)的Windows操作系统设计。这个压缩包"python-3.8.10-amd64.rar"包含了一个用于在Windows上安装Python 3.8.10的可执行文件...
Python操作CAD干货系列-批量设置多个cad文档图层、文字样式、颜色Python操作CAD干货系列-批量设置多个cad文档图层、文字样式、颜色Python操作CAD干货系列-批量设置多个cad文档图层、文字样式、颜色Python操作CAD干货...
opencv_python-4.5.5.62-cp36-abi3-win_amd64.whl 适用关于64位Windows系统