Python dict常见操作

本文详细介绍了Python中字典(dict)的各种常见操作,包括clear()、copy()、fromkeys()、get()、has_key()、pop()、setdefault()、items()、iteritems()、iterkeys()、itervalues()、update()等方法的使用方式和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#字典dict常见操作

>>> dir(dict)
['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']
  • clear()用于清空(或删除)字典中的所有数据项。
>>> test={'wang':1,'www':'ad'}
>>> test
{'www': 'ad', 'wang': 1}
>>> test.clear()
>>> test
{}
  • copy()返回一个字典的浅复制。
>>> test1={'www':22,'aaa':33}
>>> test2=test1.copy()
>>> test2
{'www': 22, 'aaa': 33}
  • fromkeys()用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。
>>> seq=('wang','hao')
>>> test=test.fromkeys(seq)
>>> test
{'wang': None, 'hao': None}
>>> test=test.fromkeys(seq,10)
>>> test
{'wang': 10, 'hao': 10}
  • get()函数返回指定键的值,如果值不在字典中返回默认值。
>>> test.get('wang')
10
  • has_key()用于判断键是否存在于字典中,如果键在字典dict里返回true,否则返回false。
>>> test.has_key('wang')
True
  • pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
>>> test.pop('wang')
10
>>> test
{'hao': 10}
  • setdefault() 函数和get()方法类似, 如果键不存在于字典中,将会添加键并将值设为默认值。
>>> test.setdefault('hao')
10
>>> test.setdefault('biabia')
>>> test
{'biabia': None, 'hao': 10}
>>> test.setdefault('qqqq',233)
233
>>> test
{'qqqq': 233, 'biabia': None, 'hao': 10}
  • items() 返回一个字典的拷贝列表
>>> print test.items()
[('qqqq', 233), ('biabia', 520), ('hao', 10)]
  • iteritems()是generator, yield 2-tuple,返回的是一个生成器(迭代器)。
>>> a=test.iteritems()
>>> for i in a:
	print i

	
('qqqq', 233)
('biabia', 520)
('hao', 10)
  • iterkeys()返回一个只有键的迭代器
>>> a=test.iterkeys()
>>> for i in a:
	print i

	
qqqq
biabia
hao
  • itervalues()返回一个只有值的迭代器
>>> a=test.itervalues()
>>> for i in a:
	print i

	
233
520
10
  • update()更新字典,即将原有字典与其他字典内容合并
>>> test.update({'oo':23,})
>>> test
{'qqqq': 233, 'oo': 23, 'biabia': 520, 'hao': 10}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值