我有一个文件,我要复制文件的一些数据并将其粘贴到另一个文件,例如假设一个文件包含以下数据:
AlphaforBravo007 102000000010170000000001 SusanaForCharlie 1000 end
从上面的文字我想分别复制102000000010170000000001
和1000
并将其粘贴到新文件中,每个文件都在新行上。
我真的很感激任何提示。
答案 0 :(得分:3)
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
答案 1 :(得分:1)
for line in file1:
a, b, c, d, e = line.split()
file2.write(' '.join((b, d)) + '\n')
提示:
split
)答案 2 :(得分:1)
如果只想从空格分隔的文本文件中提取第二和第四列,可以使用
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")
答案 3 :(得分:0)
如果您只想复制数字并避免文件从文件到另一个文件,您可以使用以下内容:
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