我有一个文件,我想在其中复制文件的一些数据并将其粘贴到另一个文件中,例如假设一个文件包含以下数据:
AlphaforBravo007 102000000010170000000001 SusanaForCharlie 1000 end
从上面的文本中,我想分别复制102000000010170000000001
并1000
粘贴到一个新文件中,每个文件都在新行上。
我真的很感激任何提示。
with open('file1.txt') as f1,open('file2.txt','w') as f2:
for line in f1:
x=line.split() #now x is ['AlphaforBravo007', '102000000010170000000001', 'SusanaForCharlie', '1000', 'end']
f2.write('\n'.join((x[1],x[3]))+'\n')
现在file2.txt
包含:
102000000010170000000001
1000
for line in file1:
a, b, c, d, e = line.split()
file2.write(' '.join((b, d)) + '\n')
提示:
split
)如果您只想从空格分隔的文本文件中提取第二列和第四列,您可以使用
columns = operator.itemgetter(1, 3)
with open("input.txt") as input, open("output.txt", "w") as output:
for line in input:
output.write(" ".join(columns(line.split())) + "\n")
如果您想简单地复制数字并避免将文本从一个文件复制到另一个文件,您可以使用以下内容:
import re
with open('number.txt') as f1,open('number2.txt','w') as f2:
for line in f1:
lst=line.split()
for parts in lst:
if not re.search('[A-Za-z]', parts): # Look for any alphabetical character in parts
if lst[1] == parts:
f2.write(parts)
else:
f2.write('\n' + parts)
这给出了:
102000000010170000000001
1000