我有一个函数输出列表,我想验证数组的元素是否在文件中(包含服务器名称的文本文件),我想只打印那些不在文件中的服务器。
在这些方面思考一些事情:
host_list = ['abc.server.com', 'xyz.server.com']
sfile = open("slist.txt","r")
for num in host_list:
do
for aline in sfile.realines():
if num =! aline.split()
print num
sfile.close()
答案 0 :(得分:1)
这是一个简单的方法来做你想做的事情:
host_list = ['abc.server.com', 'xyz.server.com']
sfile = open("slist.txt","r")
hosts_in_file = set()
for line in sfile:
for server in line.strip().split():
hosts_in_file.add(server)
print [host for host in host_list if host not in hosts_in_file]
sfile.close()