python比较两个文本文件并将输出打印到另一个fi

2024-05-08 17:21:57 发布

您现在位置:Python中文网/ 问答频道 /正文

file1.txt

neighbor 192.168.3.1 remote-as 200
neighbor 192.168.4.1 remote-as 300
neighbor 192.168.15.1 remote-as 400
neighbor 192.168.16.1 remote-as 500
neighbor 20.249.208.165 remote-as 200
neighbor 80.249.208.165 remote-as 100
neighbor 192.168.5.1 remote-as 400

file2.txt

neighbor 26.24.1.165 remote-as 200
neighbor 90.239.208.165 remote-as 100
neighbor 192.168.3.1 remote-as 200
neighbor 192.168.4.1 remote-as 300
neighbor 192.168.5.1 remote-as 400
neighbor 192.168.6.1 remote-as 500
neighbor 192.168.15.1 remote-as 400
neighbor 192.168.16.1 remote-as 500

我有这两个文件!!!! 我想将file1.txt的每一行与file2.txt中的所有行进行比较,并打印不匹配的行

我尝试过很多方法,有时在for循环之外使用变量时遇到问题!谁能帮帮我!!!谢谢


Tags: 文件方法txtforremoteasfile1file2
1条回答
网友
1楼 · 发布于 2024-05-08 17:21:57

解决方案

file_one = open('file1.txt', 'r')
file_two = open('file2.txt', 'r')

content = file_one.readlines()
content_2 = file_two.readlines()

non_match = []

for line in content:
    if line not in content_2:
        non_match.append(line)

print(('\n').join(non_match))

file_one.close()
file_two.close()

~

输出

(xenial)vash@localhost:~$ python3.7 search.py 
neighbor 20.249.208.165 remote-as 200

neighbor 80.249.208.165 remote-as 100

相关问题 更多 >