Python:Excel转TXT的简单办法

在初步学习了使用Python读写txt和xlsx文件后,即可完成的一个脚本文件。

主要应用了openpyxl模块和time模块,其中出于为了使代码更cooool!的目的加入了计时和转化进度的相关语句,非必需。

希望读者能有所收获。
欢迎各位提出宝贵的意见。

#excel转txt炫酷版v3.0
#作者:xjtu.李梓萌
#创建日期:2020.12.6
#说明:该文件可用于将excel逐行写入txt中,使用前将该文件与excel文件放在同一文件夹内即可。
#开始
import openpyxl,time
n=str(input('要打开的表格的文件名:'))
a=openpyxl.load_workbook(f'{n}.xlsx')
zzz=str(input('请输入目标工作表名称:(如工作表1)'))
b=a.get_sheet_by_name(zzz)
print('您正在启动EXCEL转TXTv3.0炫酷版')
print('程序已启动...')

#测长宽
l=1
w=1
c=b.cell(1,l)
c1=c.value
d=b.cell(w,1)
d1=d.value
while c1!=None:
    l=l+1
    c=b.cell(1,l)
    c1=c.value
    #print(c1)
print(f'检测到该文件有{l-1}行')
while d1!=None:
    w=w+1
    d=b.cell(w,1)
    d1=d.value
    #print(d1)
print(f'检测到该文件有{w-1}列')
T=float(100)/float((int(l)-1)*(int(w)-1))
N=float(1)
ttt=N*T

#输出
start =time.clock()
for j in range(1,w):
    for i in range(1,l):
        p=b.cell(j,i)
        #写txt
        h=open(f'{n}.txt','a',encoding='utf-8')
        q=str(p.value)
        m=h.write(q)
        h.write('   ')
        ttt=round(ttt,2)
        print(f'转化进度:{ttt}'+r'%')
        N=N+1
        ttt=N*T
    h=open(f'{n}.txt','a',encoding='utf-8')
    h.write('\n')
end = time.clock()
print('转化完毕!')
print('时间为: %s Seconds'%(end-start))

路过赞赞吧 ~

你可能感兴趣的:(新手之路,python,excel)