r.get(i,0) 就是,取i键的值,如果键不存在返回0.
r.setdefault(i,0) 则是,取i键的值,如果键不存在返回0,并且创建一个i:0的键值对.
所以,你的这个例子,两种写法,效果是一样的.没有区别,你看下面的例子,就很明显.
get完,字典没有变化,setdefault则新增了一个键值对
①.、get函数利用键来获取值
在获取值得时候常用的方法就是直接,但这种方法中当字典中不存在该键时会返回KeyError类型错误,此时就可以用get函数还利用键获取值,利用get函数操作时当字典中不存在输入的键时会返回_个None,这样程序运行时就不会出异常.
get函数今天这一节有两个参数,第_个是确定要分配值的键,第_个是拟定给键分配_个初值,但实际要给键赋值仍需要get赋值语句.拟定初值语句本身对结果是没有影响的,因为并没有实际的对键进行赋值语句操作.
字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字、字符串、元组,这种结构类型也称之为映射.字典类型是Python中唯一内建的映射类型,基本的操作包括如下:
(1)len():返回字典中键—值对的数量;
(10)has_key函数:检查字典中是否含有给出的键
(11)items和iteritems函数:items将所有的字典项以列表方式返回,列表中项来自(键,值),iteritems与items作用相似,但是返回的是一个迭代器对象而不是列表
第一段:字典的创建
①1 直接创建字典
printd
printd['two']
printd['three']
运算结果:
=======RESTART: C:\Users\Mr_Deng\Desktop\test.py=======
printu'items中的内容:'
printitems
printu'利用dict创建字典,输出字典内容:'
d=dict(items)
printu'查询字典中的内容:'
printd['one']
items中的内容:
利用dict创建字典,输出字典内容:
查询字典中的内容:
或者通过关键字创建字典
printu'输出字典内容:'
输出字典内容:
第二段:字典的格式化字符串
print"three is %(three)s."%d
第三段:字典方法
d.clear()
{}
请看下面两个例子
d={}
dd=d
d['one']=1
printdd
printu'初始X字典:'
printx
printu'X复制到Y:'
y=x.copy()
printu'Y字典:'
printy
printu'修改Y中的值,观察输出:'
printu'删除Y中的值,观察输出'
y['test'].remove('c')
初始X字典:
X复制到Y:
Y字典:
修改Y中的值,观察输出:
删除Y中的值,观察输出
注:在复制的副本中对值进行替换后,对原来的字典不产生影响,但是如果修改了副本,原始的字典也会被修改.deepcopy函数使用深复制,复制其包含所有的值,这个方法可以解决由于副本修改而使原始字典也变化的问题.
fromcopyimportdeepcopy
x={}
x['test']=['a','b','c','d']
z=deepcopy(x)
printu'输出:'
printz
printu'修改后输出:'
x['test'].append('e')
运算输出:
输出:
{'test': ['a','b','c','d']}
修改后输出:
{'test': ['a','b','c','d','e']}
d=dict.fromkeys(['one','two','three'])
{'three':None,'two':None,'one':None}
或者指定默认的对应值
d=dict.fromkeys(['one','two','three'],'unknow')
{'three':'unknow','two':'unknow','one':'unknow'}
printd.get('one')
printd.get('four')
None
注:get函数可以访问字典中不存在的键,当该键不存在是返回None
printd.has_key('one')
printd.has_key('four')
True
False
list=d.items()
forkey,valueinlist:
printkey,':',value
one :1
it=d.iteritems()
fork,vinit:
print"d[%s]="%k,v
d[one]=1
printu'keys方法:'
list=d.keys()
printlist
printu'\niterkeys方法:'
it=d.iterkeys()
forxinit:
keys方法:
['three','two','one']
iterkeys方法:
three
two
one
d.pop('one')
d.popitem()
printd.setdefault('one',1)
d={
}
x={'one':1}
d.update(x)
printd.values()
所有类型的方法都可以赋值给一个变量,这很正常.
你这里只不过是将一个字典对象的实例方法get赋给了函数max的关键字参数key.
这是一个例子:
get方法的第二个参数是默认值.
当dict中不存在指定的key时,不返回None,而是返回指定的默认值.
①.、get() 返回指定键的值,如果值不在字典中返回default值.
语法:dict.get(key,default=None)
参数:
key 字典中要查找的键.
default 如果指定键的值不存在时,返回该默认值值.
例:
print("Name is:%s"% dict.get('Name')◆"\n"◆ "Age is:%d"% dict.get('Age'))
显示结果为:
Name is:alex
print("Value is %s" % dict)
以上就是土嘎嘎小编为大家整理的get函数python相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!