龙空技术网

Python第87题:按条件过滤字典【PythonTip题库精编300题】

fangel 105

前言:

当前朋友们对“pythontip”大约比较关切,我们都想要分析一些“pythontip”的相关文章。那么小编也在网上网罗了一些有关“pythontip””的相关知识,希望我们能喜欢,朋友们快快来学习一下吧!

1、编程试题:

编写一个程序,根据某个条件过滤字典值。

对于这个挑战,条件是字典值应该大于整数k。

定义函数filter_dict_values(),有两个参数:字典mixed_dict和整数k。

在函数内部,创建一个新字典,并从mixed_dict过滤值不是整数或大于整数k的键值对,然后存储到新字典中。

返回新字典。

示例输入

{'cat': 2, 'dog': 5, 'parrot': 'yellow', 'fish': 1}

3

示例输出

{'dog': 5, 'parrot': 'yellow'}

解释:

在输出中,过滤后的字典包含一个大于3(k的输入值)的整数值,以及一个不是整数的值yellow。

2、代码实现:

可编辑代码:

#!/usr/bin/python3.9# -*- coding: utf-8 -*-## Copyright (C) 2024 , Inc. All Rights Reserved## @Time      : 2024/1/31 20:12# @Author    : fangel# @FileName  : 87. 按条件过滤字典.py# @Software  : PyCharmdef filter_dict_values(mixed_dict, k):    resDict = {}    for key,value in mixed_dict.items():        #如果过滤值不是整数,加入到字典里        if type(value) != int:            resDict[key] = value        #如果是整数,且大于指定值k,也加入到字典里        elif int(value) > k:            resDict[key] = value    return resDict# 获取输入user_dict = eval(input())user_k = int(input())调用函数print(filter_dict_values(user_dict, user_k))

3、代码分析:

该题通过for key,value in mixed_dict.items()方法来遍历字典,使用items()函数可以轻松地获取字典中的键值对。然后判断过滤值是否是整数,不是整数就加入到字典里;是大于k的整数也加入到字典里。

4、运行结果:

输入:

{'lime': 2, 'orange': 5, 'lemon': 'yellow', 'grapefruit': 1}

3

输出:

{'orange': 5, 'lemon': 'yellow'}

标签: #pythontip #pythontip刷题 #pythontip题库