Build a User Configuration Manager - Build a User Configuration Manager

Tell us what’s happening:

Hi, I have been grinding out this but I can’t seem to get 25, 26, or 27 to work. I have tried everything I could think of, please help.

Your code so far

test_settings = {
    'theme': 'dark'
}

def add_setting(settings, new_setting):
    if not isinstance(settings, dict):
        return 'The first value should be a dictionary'
    if not isinstance(new_setting, tuple):
        return 'The second value should be a tuple'
    
    key, value = new_setting

    key = str(key).lower()
    value = str(value).lower()
    
    if key in settings:
        return f"Setting '{key}' already exists! Cannot add a new setting with this name."
    
    settings[key] = value
    return f"Setting '{key}' added with value '{value}' successfully!"

def update_setting(settings, update_setting):
    if not isinstance(settings, dict):
        return 'The first value should be a dictionary'
    if not isinstance(update_setting, tuple):
        return 'The second value should be a tuple'

    key, value = update_setting
    key = str(key).lower()
    value = str(value).lower()
    
    if key not in settings:
        return f"Setting '{key}' does not exist! Cannot update a non-existing setting."
        
    settings[key] = value
    return f"Setting '{key}' updated to '{value}' successfully!"

def delete_setting(settings, delete_setting):

    if not isinstance(settings, dict):
        return 'The first value should be a dictionary'
    if not isinstance(delete_setting, str):
        return 'The second value should be a string'
    
    delete_setting = delete_setting.lower()
    
    if not delete_setting in settings.keys():
        return 'Setting not found!'

    del settings[delete_setting]
    return f"Setting '{delete_setting}' deleted successfully!"

def view_settings(settings):
    if not isinstance(settings, dict):
        return 'The value should be a dictionary'
    
    if not settings:
        return 'No settings available.'

    view_setting = ''
    for key, value in settings.items():
        setting = f"{key.capitalize()}: {value.lower()}\n"
        view_setting += setting
        return view_setting 




print(view_settings(test_settings))

    

Your browser information:

User Agent is: Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36

Challenge Information:

Build a User Configuration Manager - Build a User Configuration Manager

Hi @bernd1

You need to display multiple settings.

Happy coding

I figured out what it was, my return statement was in the for loop on accident, but thanks! I added the new ones and I didn’t see anything but the theme so I knew something was up so I went through my code and saw the return statement in the loop. Thanks though!