我有一个带有单词和数字的文件,还有一些只有单词的文件。第一个文件如下所示:
Cow; 39402
Horse; 2039
Pig; 2494
Snake; 39485
Monkey; 9309348
第二个文件如下所示:
Monkey
Horse
Bird
Pig
Donkey
Monkey
我想将第一个文件的数字添加到第二个文件的单词中。如您所见,并非第二个文件中的所有项目都是第一个文件的一部分。在这种情况下,我想打印没有数字的单词。所以我最终的 txt 文件将如下所示:
Monkey; 9309348
Horse; 2039
Bird
Pig; 2494
Donkey
Monkey; 9309348
Cow; 39402
这是我尝试过的:
f = open("wordsonly.txt", "r")
flist = f.readlines()
d = open("wordsandnumbers.txt", "r")
dlist = d.readlines()
nf = open("finalfile.txt", "w")
for line in f:
for item in dlist:
newitem = item.rstrip('\n')
if newitem in line:
splitline = newitem.split(';')
newline = line.rstrip('\n')+';'+splitline[1]+'\n'
nf.write(newline)
break
a += 1
lengthlist = len(dlist)
if line.rstrip('\n') not in newline:
if a == lengthlist:
nf.write(line)
但是,这段代码在某些情况下给出了太多的结果(每行不止一个),我不知道为什么......
(我稍微简化了我的代码,所以可能会有一些小错误。对此我很抱歉)