我是Python的新手。我想比较两个文件(1.txt和2.txt)。
1.txt的内容:
a
b
c
Run Code Online (Sandbox Code Playgroud)
2.txt的内容:
a
b
c
d
Run Code Online (Sandbox Code Playgroud)
程序代码:
with open("1.txt") as f1:
with open("2.txt") as f2:
for line in f2.readlines():
if line not in f1.readlines():
print(line)
Run Code Online (Sandbox Code Playgroud)
当我运行代码时,输出为:
b
c
d
Run Code Online (Sandbox Code Playgroud)
在我看来,它只应输出字母“ d”(在2.txt中而不是1.txt中)。因此,任何人都可以说出为什么输出如图片所示吗?
然后,我调试程序,并在右上角观察两个变量:“ f1.readlines()”和“ f2.readlines()”。
我在手表窗口的第3行中使用了“ Step Over” ,“ f1.readlines()”和f2.readlines()”仍然为空,我无法理解。
所有可用的商品均不可用
所以,我的问题是:
1为什么我的代码无法工作?
2比较“ 1.txt”和“ 2.txt”的正确代码是什么?
谢谢!
python ×1