Create a dictionary which saves its data to file
bugs:


Your implementation of __setitem__() does not to add a line
if the key does not exist in the file yet.


other issues:


There is no need to create the file if it does not exist in
__init__(), as open(..., 'w') in __setattr__() will create
it for you.
It is gennerally not a good idea to print from a data class
(i.e. print("creating "+file)) as this makes the class unuseable for
programs that use stdout.
Iterating over a file in python automatically splits on lines so

lines = open(self.file).read().splitlines()
for index, line in enumerate(lines):


could be written as

for index, line in enumerate(open(self.file)):


(like you did in __init__())
If you are going to completly rewrite the file on every
__setitem__(), there is no point in reading the file first, as this
takes more time and is harder to read. here is an example
__setitem__():

def __setitem__(self,key,item):
    dict.__setitem__(self,key,item) #to avoid infinite loop

    with open(self.file, 'w') as save_file:
        for key, value in self.items():
            save_file.write("{} = {}\n".format(key, value))