May-04-2019, 05:29 PM
I think you should do something like this -
adressDict = {'phony' : {'name' : 'Phony Phony', 'phone' : 'PhonyNum', 'adress' : 'Pony adress'}} def addPerson(): nickname = input('Type a nickname for the person\n - ') name = input('Type their full name\n - ') adress = input('Type their adress\n - ') phone = input('Type their phone number\n - ') add = False for i in adressDict: if i.lower() == name.lower(): print('Name already there') elif adressDict[i]['name'].lower() == name.lower(): print('Name already there') else: add = True if add: adressDict.update({nickname : {'name' : name, 'phone' : phone, 'adress' : adress}}) def indexPerson(): name = input('Type the person\'s name or nickname\n - ') for i in adressDict: if i.lower() == name.lower() or adressDict[i]['name'].lower() == name.lower(): print('\nName: %s\nPhone Number: %s\nAdress: %s\n' %(adressDict[i]['name'], adressDict[i]['phone'], adressDict[i]['adress'])) else: print('Name not found') def yesNo(): yesNo = input('Would you like to add a person to the adress book y/n \n - ') if yesNo == 'n': indexPerson() elif yesNo == 'y': addPerson() else: print('Invalid response') def main(): while True: yesNo() Quit = input('Would you like to quit y/n \n - ') if Quit == 'n': pass elif Quit == 'y': break else: print('Invalid response') main() quit()You can also use pickle to save everything to a txt document