字典的key都可以是什么】的更多相关文章

作者:Inotime 来源:CSDN 原文:https://blog.csdn.net/lnotime/article/details/81192207 答:一个对象能不能作为字典的key,就取决于其有没有__hash__方法.所以所有python自带类型中,除了list.dict.set和内部至少带有上述三种类型之一的tuple之外,其余的对象都能当key. 比如数值/字符串/完全不可变的元祖/函数(内建或自定义)/类(内建或自定义)/方法/包等等你能拿出手的,不过有的实际意义不高.还有数值型…
一个对象能不能作为字典的key,就取决于其有没有__hash__方法.所以所有python自带类型中,除了list.dict.set和内部至少带有上述三种类型之一的tuple之外,其余的对象都能当key. 比如数值/字符串/完全不可变的元祖/函数(内建或自定义)/类(内建或自定义)/方法/包等等你能拿出手的,不过有的实际意义不高.还有数值型要注意,因为两个不同的相等数字可以有相同的哈希值,比如1和1.0.…
#encoding=utf-8 #反转字典 即key和val互换 dict1={1:2,3:4,6:7,9:10} print '---生成器表达式' def invert_dict(d): return dict((v,k) for k,v in d.iteritems()) print invert_dict(dict1) print '---列表推导' def invert_dict2(d): return dict([(v,k) for k,v in d.iteritems()]) pr…
flash 监听事件者 与 事件发出者 比如说现在有A和B,A.addChild(B)A监听鼠标点击事件那么当点击B时,target是B,currentTarget是A也就是说,currentTarget始终是监听事件者,而target是事件的真正发出者 匿名函数的引用 var t:Timer = new Timer(1000,10);      t.addEventListener(TimerEvent.TIMER,function(evt:TimerEvent):void{        i…
一.数据筛选: 处理方式: 1.filter函数在py3,返回的是个生成式. from random import randint data = [randint(-100,100) for i in range(10)] data2 = [34, -59, -13, 96, -78, 38, 89, -96, -79, 98] info = filter(lambda x:x>0,data2) for i in info: print(i) 2.列表解析 from random import…
python中dict类型的key值要求是不可变类型,通常来说,我们一般采用int或者str类型来作为字典的key,但是在某些场景中,会造成一定的麻烦. 如我们有一个处理http Request的规则类名为Rule,其定义如下,它由一个Request path和其支持的Request methods数组组成: class Rule(object): def __init__(self, path, methods): assert(isinstance(path, str)) assert(is…
1.sorted函数首先介绍sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数. 其中iterable表示可以迭代的对象,例如可以是dict.items().dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序(从大到小),reverse=false则是顺序(从小到大),默认是reverse=false. 2.…
上篇博文中,小爬曾多次为VBA字典带货.鼓励多用字典,可以让我们的VBA脚本工具执行更快.今天小爬来细聊一下VBA字典的具体应用!如果你有一定VBA基础,那么看完你一定会对VBA字典有全新的认识:如果你还是这方面的新手,也不影响点赞收藏哈. 字典,其实就是一些"键-值"对.使用起来非常方便,有类似于微型数据库的作用,可用于临时保存一些数据信息.在很多其它编程语言里,我们也常称它为MAP. 我们先来简单看下字典如何创建,又具备哪些属性和方法. 一.字典的创建,用的是WSH引用 Dim m…
一般有两种通用做法: 第一种方法:使用自带函数实现: 在python的字典的属性方法里面有一个has_key()方法: #生成一个字典 d = {'name':Tom, 'age':10, 'Tel':110} #打印返回值 print d.has_key('name') #结果返回True 第二种方法:使用in方法: #生成一个字典 d = {'name':Tom, 'age':10, 'Tel':110} #打印返回值,其中d.keys()是列出字典所有的key print ‘name’ i…