最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Python 字典相关的笔试题

XAMPP案例 admin 810浏览 0评论

drr0040

最近在找新的工作,这两周一直在面试,面试中遇到了一些笔试题,以前遇到的更多是特别扯的笔试题,明显感觉工作中不会遇到,但是最近遇到的一些操作字典笔试题,觉得很有意思,生活中应该多少会用到,特此记录一下。

d1 = {
    "a": None,
    "b": 123,
    "c": 1234,
    "d": {
        "e": 123,
        "f": None,
        "h": {
            "test": 123,
            "null": None
        }
    }
}

有上面这样的字典,嵌套层级是不固定的,需要把值是 None 的 key:value 删掉,这种实际场景可能会经常遇到。解题思路大概是这样的,对当前字典进行遍历处理,判断字典的 value 类型,如果 value的值是字符串,则按照字典的  key 和 value 更新到新的字典中,如果value值的类型是字典,则进行递归处理,需要注意的地方是新字典 key 的值。

 

解题代码如下:

def del_key(d1: dict, new_dict=None) -> dict:
    if new_dict is None:
        new_dict = {}
    for key, value in d1.items():
        if isinstance(value, dict):
            new_dict[key] = {}
            del_key(value, new_dict[key])
        elif value:
            new_dict[key] = value
    return new_dict

这几天会连续更新下我遇到的 Python 笔试题。

转载请注明:XAMPP中文组官网 » Python 字典相关的笔试题

您必须 登录 才能发表评论!