我是一个初学者,在执行此代码时遇到问题。我的代码有效,但仅适用于某些文件。 此代码需要两个不同的txt文件进行比较,并返回两者之间最大的共同点。如果未发现窃,则返回False。 这两个txt文件都没有大写字母,标点符号或换行符。
我的代码:
def check_plagiarism(file1_1,file2_2):
with open(file1_1, 'r') as f1:
with open(file2_2, 'r') as f2:
file1=f1.read()
file2=f2.read()
answer = ""
len1, len2 = len(file1), len(file2)
for i in range(len1):
if file1[i]==" " or i==0:
match = ""
space=0
for j in range(len2):
if (i + j < len1 and file1[i + j] == file2[j]):
match += file2[j]
if file2[j]==" ":
space+=1
else:
if (len(match) > len(answer) and space>=6):
answer = match
match = ""
space=0
if answer=="":
return False
else:
if answer[0]==" ":
return answer[1:]
else:
return answer
print(check_plagiarism("file_1.txt", "file_2.txt"))
文件1: 我环游世界以缓解烦恼的心情我把尸体躺在时间的沙子中,我看着世界漂浮在月球的黑暗面,我觉得我无能为力,是的,我看着世界漂浮在毕竟月亮的阴暗面我知道这一定与你有关,我真的不介意现在发生的事情,只要我成为疯子,只要你成为我的朋友,那你是否仍称我为超人,如果我还活着,那么你会在那里握着我的手生病吗,让我和我的超人力量k石一起在你身边
文件2: 我不在乎我是否发疯,然后一二三四五切换疯狂我要不在乎我五四三二一并切换
文件3: 小时候,我到树林里走走,发现自己比回到家的树高些,也小些。我去了沙漠,经过了漫长的日日夜夜,我的精神离开了我的身体,我离开了我的身体。躺在时间之沙的某个地方,那里没有形体的负担,我看着世界漂浮在我身旁,飞向茫茫的月光下
在File1和File2上都可以使用,但在File1和File3上却不能。