如何将Python处理的txt文件高效转换为Excel格式(xls)?
- 内容介绍
- 文章标签
- 相关推荐
本文共计405个文字,预计阅读时间需要2分钟。
pythonimport openpyxl
def txt_to_xls(txt_content): # 将文本内容分割为行 lines=txt_content.strip().split('\n')
# 创建一个Excel工作簿 workbook=openpyxl.Workbook() sheet=workbook.active
# 将每一行写入Excel的单元格中 for row, line in enumerate(lines, start=1): sheet.append(line.split(','))
# 保存Excel文件 workbook.save('output.xlsx')
示例文本内容txt_content=1,Apple,Red
2,Orange,Yellow
3,Banana,Green
调用函数
txt_to_xls(txt_content)把txt文本转换成xls的Excel的脚本:
#!/bin/env python# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose: txt转换成Excel
# Author: zhoujy
# Created: 2013-05-07
# update: 2013-05-07
#-------------------------------------------------------------------------------
import datetime
import time
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)
使用方法:
zhoujy@zhoujy:~$ python t2e.py /home/zhoujy/outfile/out.txt ABC效果:
其他:一些基本的操作请见这里
~~~~~~~~~~~~~~~
万物之中,希望至美
~~~~~~~~~~~~~~~
本文共计405个文字,预计阅读时间需要2分钟。
pythonimport openpyxl
def txt_to_xls(txt_content): # 将文本内容分割为行 lines=txt_content.strip().split('\n')
# 创建一个Excel工作簿 workbook=openpyxl.Workbook() sheet=workbook.active
# 将每一行写入Excel的单元格中 for row, line in enumerate(lines, start=1): sheet.append(line.split(','))
# 保存Excel文件 workbook.save('output.xlsx')
示例文本内容txt_content=1,Apple,Red
2,Orange,Yellow
3,Banana,Green
调用函数
txt_to_xls(txt_content)把txt文本转换成xls的Excel的脚本:
#!/bin/env python# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose: txt转换成Excel
# Author: zhoujy
# Created: 2013-05-07
# update: 2013-05-07
#-------------------------------------------------------------------------------
import datetime
import time
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)
使用方法:
zhoujy@zhoujy:~$ python t2e.py /home/zhoujy/outfile/out.txt ABC效果:
其他:一些基本的操作请见这里
~~~~~~~~~~~~~~~
万物之中,希望至美
~~~~~~~~~~~~~~~

