字典(待补充)

setdefault函数的用法
dict.setdefault(key, default=None)
功能:
如果键不存在于字典中,将会添加该键并将default的值设为该键的默认值,如果键存在于字典中,将读出该键原来对应的值,default的值不会覆盖原来已经存在的键的值

update

  • d1.update(d2)
    • 将d2的字典内容加到d1字典中
d1 = {'name':'xiaoge','age':15}
d2 = {'face':'cool'}
d1.update(d2)
print('value:%s'%d1)
d2.update(d1)
print(d2)
#value:{'name': 'xiaoge', 'age': 15, 'face': 'cool'}
 {'face': 'cool', 'name': 'xiaoge', 'age': 15}

get setdefault

  • Python 字典 get() 方法和 setdefault() 方法类似,返回指定键的值,如果键不在字典中,返回一个指定值,默认为None
    get() 和 setdefault() 区别: setdefault() 返回的键如果不在字典中,会添加键(更新字典),而 get() 不会添加键。
a = {'int':0}
b = a.get('int')
d = a.get('age',18)
print(b)		#0
print(d)		#18
c = a.get('age')
print(c)		#None
e = a.setdefault('int')
print(e)		#0
print(a)		#{'int': 0}
f = a.setdefault('age',10)
print(f)		#10
print(a)		#{'int': 0, 'age': 10}

pop

  • 删除键值对并且返回这个键值对的值
  • pop() 方法语法:D.pop(key[,default])
  • 参数
    • key: 要删除的键/值对所对应的键
    • default: 可选参数,给定键不在字典中时必须设置,否者会报错(没有默认值),此时返回default值
a = {'name':'xiaoge','age':18,'face':'handsome'}
b = a.pop('name')
c = a.pop('like','yang')	#这样是对的
d = a.pop('age',15) #如果没有age键,则返回设置的默认值15,如果有,返回age对应的值
print(a,b,c,d)
#{'age': 18, 'face': 'handsome'} xiaoge yang 18
#下面的d是错的,因为没有键like,而且没给like设置默认值
d = a.pop('like')	
#KeyError: 'like'

猜你喜欢

转载自blog.csdn.net/xiaogeldx/article/details/90509987