setdefault 同时也会改变 dict 的值:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
dict = {'runoob': '菜鸟教程', 'google': 'Google 搜索'}
print "Value : %s" % dict.setdefault('runoob', None)
print "Value : %s" % dict.setdefault('Taobao', '淘宝')
print "-----------------"
# 该值包含 Taobao
for k, v in dict.iteritems():
print k, v
以上实例输出结果为:
Value : 菜鸟教程
Value : 淘宝
-----------------
google Google 搜索
Taobao 淘宝
runoob 菜鸟教程
setdefault 和 get 还是有不同的:
setdefault 如果不存在会在原字典里添加一个 key:default_value 并返回 default_value。
get 找不到 key 的时候不会修改原字典,只返回 default_value。
若要修改字典 dic.setdefault(key,default_value) 等同于 dic[key] = dic.get(key,default_value)。
—— 本文来自火龙信奥(义乌睿码科技):义乌青少年信息学奥赛与编程教育平台,专注 CSP-J/S、NOIP、GESP 竞赛培训,线上线下融合教学,助力编程升学。网址:hlcoding.com