python语法之通过value找key问题

目录
  • python通过value找key
    • 方法一
    • 方法二
    • 解决问题
  • python求value最大的key值

python通过value找key

方法一

raw_dict={'domain_id': '$domain_id', 'enabled': '$enabled', 'name': '$username'}
 
key_list = list(filter(lambda k: raw_dict.get(k) == "$domain_id", raw_dict.keys()))
print(key_list) # ['enabled', 'name']

方法二

newdict = dict(zip(raw_dict.values(),raw_dict.keys())) #字典的反转,但是如果两个key的value一样,反转后,只会保留一个key
print(newdict)

解决问题

接口定义的queryparm一共有3个,但是这三个参数不是非必填,测试用例需要验证分别传入这每一个参数时的返回结果,所以需要api调用时对queryparm进行移除,移除没有传入的parm

    def removeParm(self,srcInterParm,parms):
        #去除无用的parm
        pattern = re.compile(r'\$(.*?)\'')
        parmlist =re.findall(pattern,str(srcInterParm))#获取到所有$parm变量名
        noexistParm = []
        for value in parmlist:#验证parm是否在传参中包含
            if not parms.keys().__contains__(value):
                noexistParm.extend(list(filter(lambda k: srcInterParm.get(k) == '$'+value, srcInterParm.keys())))
        for key in noexistParm:
            srcInterParm.pop(key)
        return srcInterParm
 
    print(t.removeParm({'domain_id': '$domain_id', 'enabled': '$enabled', 'name': '$username'},{}))
#打印结果为{}

python求value最大的key值

d = {"1": 9, "2": 0, "3": 7, "6": 3, "0": 4, "4": 1}
value_1 = max(d, key=d.get)
print(value_1)
value_2 = max(d,key=lambda x:d[x])
print(value_2)

value_3 =sorted(d,key=lambda x:d[x])[-1]
print(value_3)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python使用sorted对字典的key或value排序

    sorted函数 sorted(iterable,key,reverse) iterable 待排序的可迭代对象 key 对应的是个函数, 该函数用来决定选取用哪些值来进行排序 reverse 反转排序 对key排序 d: dict = {"p": 59, "o": 9, "s": 5, "a": 20, "z": 18} li: list = sorted(d.keys()) print(li) 执行结果

  • python 字典操作提取key,value的方法

    python 字典操作提取key,value dictionaryName[key] = value 1.为字典增加一项 2.访问字典中的值 3.删除字典中的一项 4.遍历字典 5.字典遍历的key\value 6.字典的标准操作符 7.判断一个键是否在字典中 8.python中其他的一些字典方法 9.将两个字典合并 a={'a':1,'b':2,'c':3} b= {'aa':11,'bb':22,'cc':33} #方法一 print(dict(a,**b)) #方法二 这其实就是在内存中创

  • Python Dict找出value大于某值或key大于某值的所有项方式

    对于一个Dict: test_dict = {1:5, 2:4, 3:3, 4:2, 5:1} 想要求key值大于等于3的所有项: print({k:v for k, v in test_dict.items() if k>=3}) 得到 {3: 3, 4: 2, 5: 1} 想要求value值大于等于3的所有项: print({k:v for k, v in test_dict.items() if v>=3}) {1: 5, 2: 4, 3: 3} 如果想要求k或者v某一个就取一个即可:

  • python语法之通过value找key问题

    目录 python通过value找key 方法一 方法二 解决问题 python求value最大的key值 python通过value找key 方法一 raw_dict={'domain_id': '$domain_id', 'enabled': '$enabled', 'name': '$username'}   key_list = list(filter(lambda k: raw_dict.get(k) == "$domain_id", raw_dict.keys())) pr

  • Python语法概念基础详解

    目录 Python之禅: Python基础: 1. 进制转换: 2. 数据类型: 3. 单双引号转义字符的使用: 4.单双三引号的转义换行: 5.字符串的运算: 6.组的概念与含义: 7.集合: 8.系统关键字与引用的可变性和值的不可变性: 9.逻辑运算符: 10.分支,条件,循环,枚举,包,模块,函数: 11.面向对象基本知识: 12.运算符优先级问题: 13.代码自动调节工具pep8: 14.python库的安装: 15.解决pip超时问题: 总结 (本章节主要是一些python的基础语法,

  • Python实现的破解字符串找茬游戏算法示例

    本文实例讲述了Python实现的破解字符串找茬游戏算法.分享给大家供大家参考,具体如下: 最近在一个QQ群里发现有那种机器人, 发出来字符串找茬游戏: 有点类似于: 没没没没没没没没没没没没没没没没没没 没没没没没没没没没没没没没没没没没没 没没没没没役没没没没没没没没没没没没 没没没没没没没没役没没没没没没没没没 没没没没没没没没没没没没没没没没没没 没没没没没没没没没没没没没没没没没没 玩法就是用户发消息到群里: #找茬 然后群里有个自动聊天的机器人, 他接到这句话之后, 会将上面一大堆文字

  • Python语法快速入门指南

    Python语言与Perl,C和Java等语言有许多相似之处.但是,也存在一些差异. 在本章中我们将来学习Python的基础语法,让你快速学会Python编程. 第一个Python程序 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下: $ python Python 2.7.6 (default, Sep 9 2014, 15:04:36) [GCC 4.2.1

  • Python实现对字典分别按键(key)和值(value)进行排序的方法分析

    本文实例讲述了Python实现对字典分别按键(key)和值(value)进行排序的方法.分享给大家供大家参考,具体如下: 方法一: #使用sorted函数进行排序 ''' sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数; 其中iterable表示可以迭代的对象,例如可以是dict.items().dict.keys()等 key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reve

  • Python语法之精妙的十个知识点(装B语法)

    Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码.如能在实战中融会贯通.灵活使用,必将使代码更为精炼.高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅. 1. for - else 什么?不是 if 和 else 才是原配吗?No,你可能不知道,else 是个脚踩两只船的家伙,for 和 else 也是一对,而且是

  • python语法学习之super(),继承与派生

    目录 1 什么是继承? 2 继承的规则 3 继承原理 4 多继承属性查询顺序 5 查找流程 属性查找 6 继承概念的实现 7 私有属性私有方法在继承中的表现 8 派生类 9 属性的覆盖(派生属性) 10 父类属性(方法)的重用 11 继承派生机制的作用 12 Super() 1 什么是继承? 继承是一种创建新类的方式: 在Python中,新建的类可以继承一个或多个父类,新建的类可称为子类或派生类,父类又可称为基类或超类. 继承可以用来解决类与类之间的代码重用性问题: class ParentCl

  • Python一句代码实现找出所有水仙花数的方法

    水仙花数是指一个 3位正整数,它的每个位上的数字的 3 次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153) 下面用一句代码实现找出所有的水仙花数: 方法一: >>> >>> a = list(map(lambda x: x[1], filter(lambda x: x[0], [(i*100+j*10+k == i**3+j**3+k**3, i**3+j**3+k**3) for i in range(1, 10) for j in range(0

  • C++ map 根据value找key的实现

    flyfish 测试所需头文件 #include <algorithm> #include <vector> #include <map> #include <string> 初始 std::map<int, std::string> t; t.insert(std::make_pair(1, "a")); t.insert(std::make_pair(2, "b")); t.insert(std::ma

  • 小学生也能看懂的python语法之循环语句精解

    目录 while循环 while实现猜拳游戏 计算1-100之间的累加和 计算1-100之间偶数的累加和 计算1-100之间偶数的累加和2 while循环嵌套 for循环 for 循环嵌套 循环嵌套使用-打印正方形 打印三角形 break continue 循环和else

随机推荐