首页 > 解决方案 > 如何在python中找到相同的数字?

问题描述

我在 Python 3.8.0 中遇到了这个程序的问题。我有两个文本文件(它们不能合并)。它们包含大约 1000 个数字,每个 15 位长(看起来像这样104988537042058)。我必须找到相同的数字。有人可以帮助我吗?我有点失落。我写了这个程序,但我可能在某个地方有错误。我是编程新手,找不到问题所在。

A=open("A.txt",mode="r")
B=open("B.txt",mode="r")
out=open("Spol.txt", mode="w+")
#print(A)
#print(B)
X=""
for lineA in A:
    for lineB in B:
        if lineA==lineB:
            X+=(lineA)
        else:
            ()
        break

A.close()
B.close()
out.write(X)
out.close()

标签: pythonpython-3.x

解决方案


您将不需要else. 将 break 移到条件内部,这样它只会在找到匹配项时才中断内部循环:

file_A=open("A.txt",mode="r")
file_B=open("B.txt",mode="r")
out=open("Spol.txt", mode="w+")

for lineA in A:
    for lineB in B:
        if lineA==lineB:
            X+=(lineA)
            break

A.close()
B.close()
out.write(X)
out.close()

推荐阅读