从一个文本文件中提取日期并使用python写入新文件

时间:2018-08-09 12:00:02

标签: python python-3.x

我有一个类似于下面给出的文件,我正在寻找一种方法来读取第2行到第7行,并使用Python将其写入新文件。

16 processes; 52 threads;
CPU states: 0.0% user, 0.0% kernel
CPU  0 Idle: 99.9%
CPU  1 Idle: 99.7%
CPU  2 Idle: 100.0%
CPU  3 Idle: 100.0%
Memory: 1024M total, 854M avail, page size 4K

      PID   TID PRI STATE    HH:MM:SS    CPU  COMMAND
        1    15  10 Run       0:00:00   0.03% kernel
    28688     1  10 Rply      0:00:00   0.02% top
       11     2  21 Rcv       0:00:00   0.00% io-pkt-v6-hc
        4     2  10 NSlp      0:00:00   0.00% random
        6     1  24 Rcv       0:00:00   0.00% devc-serscif
        1    18  10 Rcv       0:00:00   0.00% kernel
    28686     1  10 SigW      0:00:00   0.00% devb-sdmmc-rcar_mmcif
    28684     1  10 SigW      0:00:00   0.00% qconn
        1    16  10 Rcv       0:00:00   0.00% kernel
        2     1  10 Rcv       0:00:00   0.00% slogger2

             Min        Max       Average
CPU 0 idle:   99%        99%        99%
CPU 1 idle:   99%        99%        99%
CPU 2 idle:  100%       100%       100%
CPU 3 idle:  100%       100%       100%
Mem Avail:   854MB      854MB      854MB
Processes:    16         16         16
Threads:      52         52         52

我想找到一种方法将这一部分保存在新的文本文件中。

CPU states: 0.0% user, 0.0% kernel
CPU  0 Idle: 99.9%
CPU  1 Idle: 99.7%
CPU  2 Idle: 100.0%
CPU  3 Idle: 100.0%
Memory: 1024M total, 854M avail, page size 4K

我可能不熟悉python而不是程序员,有人可以帮助我吗?

最好的问候

3 个答案:

答案 0 :(得分:0)

所以这应该是您想要的东西-尽管听起来好像我不会使用python,而是一些bash命令...

with open('file.txt','r') as f: #open your file to read it
    file = f.readlines() #save lines of the file as list
with open('newfile.txt','w') as f: #open (create) an output file
    f.write(file[1:7]) #write the 2nd to 7th list elements in there (0-incremented)

答案 1 :(得分:0)

使用简单的迭代。

例如:

with open(filename) as infile, open(filename2, "w") as outfile:
    next(infile)
    for _ in range(6):
        outfile.write(next(infile))

输出:

CPU states: 0.0% user, 0.0% kernel
CPU  0 Idle: 99.9%
CPU  1 Idle: 99.7%
CPU  2 Idle: 100.0%
CPU  3 Idle: 100.0%
Memory: 1024M total, 854M avail, page size 4K

答案 2 :(得分:-1)

尝试一下:

with open('first_file.txt', 'r') as file1, open('second_file.txt', 'a') as file2:
    lines = file1.readlines()
    file2.write("".join(lines[1:7]))

注意:如果您的输入文件很大,这将无法正常工作。