MST

星途 面试题库

面试题:Python使用任意数量关键字实参实现可扩展的配置系统

假设你正在开发一个可扩展的配置系统,需要编写一个函数`configure`,它使用`**kwargs`接收任意数量的配置参数。要求该函数能够将这些参数存储到一个字典中,并根据不同的配置类型(例如:数据库配置、服务器配置等)进行分类存储。请编写这个函数,并展示如何调用它来设置不同类型的配置。
11.3万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
def configure(**kwargs):
    config_dict = {
        'database': {},
      'server': {}
    }
    for key, value in kwargs.items():
        if key.startswith('db_'):
            config_dict['database'][key[3:]] = value
        elif key.startswith('server_'):
            config_dict['server'][key[7:]] = value
    return config_dict

# 调用示例
result = configure(db_host='127.0.0.1', db_port=3306, server_ip='192.168.1.1', server_port=8080)
print(result)

上述代码实现了configure函数,它接收任意数量的关键字参数,并根据参数名前缀将其分类存储到databaseserver两个字典中。调用示例中展示了如何设置不同类型的配置。