Tell us what’s happening:
I wonder why case 4 & 5 are incorrect while case 11 and 12 works. I’ve figured how to display the settings, but it only display ‘theme’ settings. After that I tried to check case number 7 and it says KeyError. Last is the delete function, which does not work. Are there any resources which I can use to understand better?
Your code so far
#User Configuration Manager
test_settings = ({
'theme': 'dark',
'notifications':'enabled',
'volume':'high'
})
'''for settings, mode in test_settings.items():
print(settings.capitalize(),':', mode)'''
def add_setting(settings, key_value):
key = key_value[0].lower()
value = key_value[1].lower()
if key in settings:
return (f"Setting '{key}' already exists! Cannot add a new setting with this name.")
if settings[key] in value:
return(f"Setting '{key}' added with value '{value}' successfully!")
def update_setting(settings, key_value):
key = key_value[0].lower()
value = key_value[1].lower()
if key in settings:
settings[key] = value
return (f"Setting '{key}' updated to '{value}' successfully!")
else:
return(f"Setting '{key}' does not exist! Cannot update a non-existing setting.")
def delete_setting(settings, key):
key = key.lower()
if settings[key] in settings:
settings.pop(key)
return(f"Setting '{key}' deleted successfully!")
else:
return(f"Setting not found!")
def view_settings(settings):
if not settings:
return "No settings available"
else:
for settings, mode in test_settings.items():
message = "Current User Settings:\n"
settings = settings.capitalize()+': '+mode
return message + settings
print(view_settings(test_settings))
print(update_setting(test_settings, ('notification', 'disabled')))
print(add_setting({'theme': 'light'}, ('THEME', 'dark')))
print(delete_setting({'theme': 'light'}, 'theme'))
print(add_setting({'theme': 'light'}, ('volume', 'high')))
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36
Challenge Information:
Build a User Configuration Manager - Build a User Configuration Manager
