我编写了这个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的行将是“某处”。
答案 0 :(得分: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')