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