使用python编程,实现对txt文件中每行内容进行追加。

我现在有多个txt文件,每个文件的数据排列是相同的,每个文件中都有两列数据,分隔符为空格,现希望将每个txt文件中的后面一列数据提取出来,整合成一个txt文件,希望这个整... 我现在有多个txt文件,每个文件的数据排列是相同的,每个文件中都有两列数据,分隔符为空格,现希望将每个txt文件中的后面一列数据提取出来,整合成一个txt文件,希望这个整合的txt文件跟以前一样是多列排布的,每一列都是以前某个txt文件中的一列。以下是我自己写的程序,只是新手,在网上搬搬套套,能够提取出每列的数据,但整合的txt文件只有一列,不能实现对每行内容进行追加,都是一列一列操作的。 展开
 我来答
wenjie1024
2016-12-07 · TA获得超过2381个赞
知道大有可为答主
回答量:1737
采纳率:72%
帮助的人:859万
展开全部

#-*- coding:utf-8 -*-

import re
import os

filepath='E:\\data11-20\\0.025'
#filepath=os.getcwd()
lst=[]
for i in range(3,100):
    filename='plane1-conv{:03d}.out'.format(i)
    fullname=(os.sep).join([filepath,filename])
    with open(fullname) as f:
        s=f.read()().strip()
    lst1=[re.split(r'\s+',si.strip())[-1] for si in s.split('\n')]
    lst.append(lst1)
#lst是一个二维数组,每个文件的最后一列作为一个一维数组存在里面
#然后找出最长列的长度lmax,其他比它短的数据列,用lmax-len(i)组空格补到和它一样长
#每组空格的数目等于数据列的第一个数据的长度
lmax=max([len(i) for i in lst])
ws=[i+[' '*len(i[0])]*(lmax-len(i)) for i in lst]

with open('E:\\hehe.txt','w') as wf:
    wf.write('\n'.join(['  '.join(i) for i in ws]))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式