将txt文本转换为excel格式
将txt文本转换为excel格式,中间使用的列分割为 tab 键
一、使用xlwt模块
注:Excel 2003 一个工作表行数限制65536,列数限制256
需要模块:xlwt
模块安装:xlwt
[root@baolin shell]#sudo pip install xlwt
脚本内容
脚本内容:
[root@baolin shell]# cat t2e.py
#!/bin/env python
# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose: txt转换成Excel
# Created: 2017-11-03
#-------------------------------------------------------------------------------
import os
import sys
import xlwt #需要的模块
def txt2xls(filename,xlsname): #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
print 'converting xls ... '
f = open(filename) #打开txt文本进行读取
x = 0 #在excel开始写的位置(y)
y = 0 #在excel开始写的位置(x)
xls=xlwt.Workbook()
sheet = xls.add_sheet('sheet1',cell_overwrite_ok=True) #生成excel的方法,声明excel
while True: #循环,读取文本里面的所有内容
line = f.readline() #一行一行读取
if not line: #如果没有内容,则退出循环
break
for i in line.split('\t'):#读取出相应的内容写到x
item=i.strip().decode('utf8')
sheet.write(x,y,item)
y += 1 #另起一列
x += 1 #另起一行
y = 0 #初始成第一列
f.close()
xls.save(xlsname+'.xls') #保存
if __name__ == "__main__":
filename = sys.argv[1]
xlsname = sys.argv[2]
txt2xls(filename,xlsname)
运行方式:
# 后缀xls会自动添加
[root@baolin shell]#python t2e.py txt文本 xls名称
二、使用xlsxwriter模块
注:当行数大于65535时,就需要使用Excel 2007 一个工作表行数限制1048576,列数限制16384
需要模块:xlsxwriter
模块安装:xlsxwriter
[root@baolin shell]#sudo pip install xlsxwriter
脚本内容
脚本内容:
#!/bin/env python
# -*- encoding: utf-8 -*-
import os
import sys
import xlsxwriter # 当文档内容大于 65535 时使用 xlsxwriter 模块
def txt2xls(filename,xlsname): #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
print('converting xls ... ')
f = open(filename) #打开txt文本进行读取
x = 0 #在excel开始写的位置(y)
y = 0 #在excel开始写的位置(x)
xls=xlsxwriter.Workbook(xlsname+'.xlsx') # 创建xlsx文件
sheet = xls.add_worksheet() # 创建一个新的表单,默认名称为 “sheet1”,输入字符参数可指定名称
while True: #循环,读取文本里面的所有内容
line = f.readline() #一行一行读取
if not line: #如果没有内容,则退出循环
break
for i in line.split('\t'):#读取出相应的内容写到x
item=i.strip().decode('utf8')
sheet.write(x,y,item)
y += 1 #另起一列
x += 1 #另起一行
y = 0 #初始成第一列
f.close()
xls.close()
if __name__ == "__main__":
filename = sys.argv[1]
xlsname = sys.argv[2]
txt2xls(filename,xlsname)
运行方式:
# 后缀xls会自动添加
[root@baolin shell]#python t2e.py txt文本 xls名称
将一个目录下的所有文件都转换为excel文件
[root@baolin shell]#cat batch_to_exl.sh
#!/bin/bash
pth="/usr/local/data_dir/data_txt/" # 将/usr/local/data_dir/data_txt/ 目录下的所有的文件循环
mkdir /usr/local/data_dir/data_xls/ -p
for n in `ls $pth`
do
# 执行脚本拼接的路径 执行脚本,将结果放在 其他目录(需要创建)
python /home/baolin/shell/t2e.py ${pth}${n} /usr/local/data_dir/data_xls/${n}
done
内容参考:
http://www.cnblogs.com/zhoujinyi/archive/2013/05/07/3064785.html
http://blog.csdn.net/gumengkai/article/details/52800257
https://zhidao.baidu.com/question/565518792570332764.html
https://www.cnblogs.com/ontheway703/p/5264517.html
将txt文本转换为excel格式的更多相关文章
- C#文本转换为Json格式
private string ConvertJsonString(string str) { //格式化json字符串 JsonSeriali ...
- 记录EXCEL格式和TXT文本格式之间的互转
EXCEL格式转变成TXT文本格式 1.打开execl文档,点击文件另存为 2.选择txt保存 3.重命名文档,打开该txt文档 4.按Ctrl+H,将文档中空格转换成其他分割符,单击确定 TXT格式 ...
- 获取Excel数据(或部分数据)并导出成txt文本格式
运行代码前先导入jxl架包,以下代码仅供参考: 测试excel文件(我要获取该excel的内容为省.县.乡.村.组和PH的值): ExcelTest01类代码如下: // 读取Excel的类 impo ...
- Python常用的数据文件存储的4种格式(txt/json/csv/excel)及操作Excel相关的第三方库(xlrd/xlwt/pandas/openpyxl)(2021最新版)
序言:保存数据的方式各种各样,最简单的方式是直接保存为文本文件,如TXT.JSON.CSV等,除此之外Excel也是现在比较流行的存储格式,通过这篇文章你也将掌握通过一些第三方库(xlrd/xlwt/ ...
- 将windows文本格式转换为UNIX格式
将windows文本格式转换为UNIX格式 1.使用sed命令来进行转换,如下: sed -e ’s,^M,,g’ textfile 其中^M的输入方法是Ctrl+V, Ctrl+M 对于批量文件的处 ...
- 用Excel如何将文本转换为数字的七种方法
用Excel如何将文本转换为数字的七种方法 当下,很多工作都会用到Excel,下面本文分步介绍了如何将包含文本的Excel单元格转换为包含数字的单元格. 概述: 当导入在另一程序(如 dBASE 或 ...
- 利用excel去除txt文本中重复项
2017-04-10 1.要去重的文件,点击右键,选择程序. 2.选择excel表格或者wps表格. 3.excel表格去重:选中单元格——数据——筛选——高级筛选——选择不重复记录——确定 wps表 ...
- Python 文本(txt) 转换成 EXCEL(xls)
#!/bin/env python # -*- encoding: utf-8 -*- #------------------------------------------------------- ...
- Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式
Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式 解决: xlwt 中设置单元格样式主要 ...
随机推荐
- android页面渲染速度提升的常用方法
参考文档:http://blog.csdn.net/vector_yi/article/details/24402101 当activity中用到的布局较多较为复杂时,页面渲染就会变得复杂,现汇总以下 ...
- [转] 一文弄懂神经网络中的反向传播法——BackPropagation
在看CNN和RNN的相关算法TF实现,总感觉有些细枝末节理解不到位,浮在表面.那么就一点点扣细节吧. 这个作者讲方向传播也是没谁了,666- 原文地址:https://www.cnblogs.com/ ...
- 必须要学会webpack打包,并到特别精通的程度
必须要学会webpack打包,并到特别精通的程度
- Qt学习之路
Qt学习之路_14(简易音乐播放器) Qt学习之路_13(简易俄罗斯方块) Qt学习之路_12(简易数据管理系统) Qt学习之路_11(简易多文档编辑器) Qt学习之路_10(Qt ...
- hibernate框架学习之数据查询(QBC)
lQBC(Query By Criteria)是一种Hibernate中使用面向对象的格式进行查询的计数 lQBC查询方式步骤 •获取Session对象 •初始化Criteria对象(使用Sessio ...
- hibernate框架学习之一级缓存
l缓存是存储数据的临时空间,减少从数据库中查询数据的次数 lHibernate中提供有两种缓存机制 •一级缓存(Hibernate自身携带) •二级缓存(使用外部技术) lHibernate的一级缓存 ...
- Tour HDU - 3488 有向环最小权值覆盖 费用流
http://acm.hdu.edu.cn/showproblem.php?pid=3488 给一个无源汇的,带有边权的有向图 让你找出一个最小的哈密顿回路 可以用KM算法写,但是费用流也行 思路 1 ...
- python连接kafka生产者,消费者脚本
# -*- coding: utf-8 -*- ''''' 使用kafka-Python 1.3.3模块 # pip install kafka==1.3.5 # pip install kafka- ...
- javacv:调取本地摄像头,抓取人脸,保存为图片
MAVEN: <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platf ...
- IntellJ IDEA下写JUnit
安装配置JUnit File->Settings->Plugins->Browse Repositories->在右侧搜索框输入"junit"-> ...