Python字典dictionary的学习

无序可变序列,不是通过索引来访问的。而是通过键来访问。

字典是无序的,各项是从左到右随机排序的(在字典中的位置没有特定顺序)

字典中的键必须唯一不允许同一个键出现两次,如果出现两次则后一个值会被保存。

字典中的键是不可变的(字典中的键可以使用数字,字符串,元组,但是不可以用列表)

声明方式:

dic={'key':'value','key2':'value2','key3':'value3'}

创建空的字典:dic={   }     或    dic =dict(   )

通过映射函数创建字典:

dic=dict(zip(list1,list2))

zip()函数用于将多个列表或者元组对应位置的元素组合为元组,并返回包含这些内容的zip()对象。

k=['a','b','c','d']
v=[1,2,3,4]
d=dict(zip(k,v))

如果获取元组则要将zip()对象使用tuple()函数转换。

获取列表,则用list()函数。

list=[123,"abc",'哈哈']

a=dict.fromkeys(list)#创建值为空的字典

d=dict(name="123",age=37)
a=dict.fromkeys(['name','age','sex'])

可以用一个元组作为键而不能用列表作为键

通过del命令 删除字典

字典对象的   .clear()将字典清空

字典对象的pop()   删除并返回指定键的元素

字典对象的popitem()方法删除并返回字典的一个元素。

访问字典元素时通过下标的方式实现。(这里的下标不是索引而是键)

如果指定的键不存在,则会抛出异常。

推荐使用字典对象的       .get(key)   方式获取指定键的值

>>> #dict对象的fromkeys()方法创建值为空的字典语法:
>>> a=[12,"abc","哈哈"]
>>> c=dict.fromkeys(a)
>>> c
{12: None, 'abc': None, '哈哈': None}
>>> c
{12: None, 'abc': None, '哈哈': None}
>>> c.items()
dict_items([(12, None), ('abc', None), ('哈哈', None)])
>>> for i in c.items():
	print(i)

	
(12, None)
('abc', None)
('哈哈', None)
>>> c.keys()
dict_keys([12, 'abc', '哈哈'])
>>> c.values()
dict_values([None, None, None])
>>> 

以指定的键为下标为字典元素赋值时,如果键存在了,则表示修改键对应的值。如果键不存在,表示增加一个新的键值对。

使用字典对象的update(),可以将另一个字典的键值对一次性全添加到当前字典对象,若两个字典存在相同对键,则以另一个字典中的值为准为当前字典进行更新。

del命令可以删除整个字典,也可以删除字典中的指定元素。

字典对象的pop()     弹出并删除指定键对应的元素

字典对象的popitem()   弹出一个元素(键值对)

字典对象的clear()  清空对象中的所有元素。

字典的访问方法:

ji

 

键相当于下标。访问时不存在会抛出异常。

字典对象的get()方法:用来返回指定键的对应值。

也可以允许指定键不存在时,返回特定的值。

list.get('age')
list.get('address','不存在')

setdefault() 返回指定键对应的值。若字典中不存在该键,则,就增加一个新元素并设置该键的对应值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值