1.定义:字典可以将一个对象映射到另一个对象,拥有属性的空对象在某种程度就是一个字典,属性名称映射到属性值。
在内部,对象通过字典来表示,其值为属性的值或者方法。
class people:
"内置类型没有__dict__方法"
name='小明'
age=10
def __init__(self):
self.a = 2
self.b = 3
def p_test(self):
pass
a=people()
print (a.__dict__)
{'a': 2, 'b': 3}
Process finished with exit code 0
2.优势:如果想用通过一个对象找到另一个对象,用字典
3.创建,赋值,取值
stocks={"姓名":"张三",
'犯罪时间':(2012,2013.2014)}
a=dict()
a['b']=1
print(stocks['姓名'],
stocks.get('姓名'),
stocks.get("年龄",18), # 第二个参数时默认值,当键名不存在时候返回默认值
a['b']
)
{'a': 2, 'b': 3}
张三 张三 18 1
Process finished with exit code 0
4.setdefault与defaultict
setdefault:
目的:为了进一步控制
作用:如果搜索的键不存在,不仅把默认值输出,而且还写进字典的值中并且把默认键也写进去。
如果搜索的键存在,和get方法一样。
stocks={"姓名":"张三",
'犯罪时间':(2012,2013.2014)}
stocks.setdefault("绰号",'法外狂徒')
print(stocks['绰号'])
法外狂徒
defaultict::
defaultdict的作用是在于,当字典里的key不存在但被查找时,返回工厂函数的默认值。
关于default的讲解博客