python 中删除指定行的数据

 

1、删除第1行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

lines = lines[1:]

for i in lines:
    out_file.write(i)

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36

 

 

2、删除第3行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

for i in range(0,len(lines)):
    if i == 2:
        continue
    out_file.write(lines[i])

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
01 11 21 31
02 12 22 32
04 14 24 34
05 15 25 35
06 16 26 36

 

 

3、删除前三行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

lines = lines[3:]
for i in lines:
    out_file.write(i)

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
04 14 24 34
05 15 25 35
06 16 26 36

 

 

4、删除最后一行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

lines = lines[:len(lines)-1]
for i in lines:
    out_file.write(i)

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35

 

 

5、删除倒数第2行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

for i in range(0, len(lines)):
    if i == (len(lines) - 1 - 1):
        continue
    out_file.write(lines[i])

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
06 16 26 36

 

 

6、删除最后3行

[root@PC1 test2]# ls
a.txt  test.py
[root@PC1 test2]# cat a.txt
01 11 21 31
02 12 22 32
03 13 23 33
04 14 24 34
05 15 25 35
06 16 26 36
[root@PC1 test2]# cat test.py
#!/usr/bin/python

in_file = open("a.txt", "r")
out_file = open("result.txt", "w")
lines = in_file.readlines()

length = len(lines) - 3
lines = lines[:length]
for i in lines:
    out_file.write(i)

in_file.close()
out_file.close()
[root@PC1 test2]# python test.py
[root@PC1 test2]# ls
a.txt  result.txt  test.py
[root@PC1 test2]# cat result.txt
01 11 21 31
02 12 22 32
03 13 23 33

 

posted @ 2022-06-02 23:29  小鲨鱼2018  阅读(5152)  评论(0编辑  收藏  举报