3

我编写了这个 python 脚本,它将每行的第一个单词保留在文本文件中,然后删除其余部分。

我该如何做相反的事情,意思是保留文件中每一行的最后一个单词并删除它之前的所有单词和空格?

import sys
with open(sys.argv[1]) as f, open('out.txt', 'w') as out:
     for line in f:
         out.write(line.split()[0]+'\n')

因此,如果给定文件中的一行是“在某处”,那么所有将被保留并写入该行的 out.txt 的内容将是“某处”。

4

1 回答 1

2

用于line.split()[-1]获得最后一句话。

Python 支持负索引:

>>> lis = [1, 2, 3, 4, 5]
>>> n = 1
>>> lis[-n]
5
>>> lis[len(lis) - n] # equivalent to lis[-n] 
5

你的代码:

import sys
with open(sys.argv[1]) as f, open('out.txt', 'w') as out:
     for line in f:
         out.write(line.split()[-1]+'\n')
于 2013-06-07T02:02:21.023 回答