python将列表与文件中的列表进行比较,而不覆盖文件

时间:2018-02-18 18:48:44

标签: python

如果有新的vcenter场

,我试图找出如何使用python脚本进行检查

假设我目前有5个农场

Farm01 Farm02 Farm03 Farm04 Farm05

如果新的vmware服务器场让我说希望该脚本能够检测到它 所以我想写出现有的农场来存档并将其与现有农场列表进行比较 但是文件越来越多,这是我到目前为止所做的事情

f=open('farms_file',"w+")
for farms_items in all_farms_list:
    f.write("%s\n" % farms_items)

f.close()
file = open('farms_file','r')
f_content = file.read()
for i in f_content.split():
    #print i will print all farms in the file
if i not in all_farms_list:
    print(i)

但由于文件被覆盖,我没有得到任何结果

你可以请提供,所以文件不会被重写,所以我会得到 新农场

例如farm6

1 个答案:

答案 0 :(得分:0)

问题是您的文件每次都被覆盖,因为您是在写入模式下打开它。要对此问题进行排序,只需更改一行即可在追加模式下打开它:

f=open('farms_file',"w+")

f=open('farms_file',"a+")

这样可以防止您的文件被覆盖并附加内容。