python字典功能_Python字典

1a6faacf8d01c177e45331649c6bd062.png第4天,python你今天学了吗?

今天学习的是python中唯一内建的映射类型----字典

1,字典的特性:

键要求不可变对象(数字,字符串,元组),不能用列表,且不能重复,value为任何对象均可

2,创建字典:

方法一:d={'key1':'value1','key2':value2''}

方法二:d=dict(a=1,a=2)

>>> d1=dict(a=1,b=2,c=3,d=4)

>>> d1

{'a': 1, 'b': 2, 'c': 3, 'd': 4}

3,字典不是序列,但字典有顺序排列(先后),字典不能通过索引切片,但是通过键d[key]查询,而且可以通过查询新建或修改

>>> d1['a']

1

>>> d1['a']=111 #查询修改key为a的value值

>>> d1

{'a': 111, 'b': 2, 'c': 3, 'd': 4}

>>> d1['e']=5 #查询新增key为e:5值

>>> d1

{'a': 111, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

以上修改不会改变字典的地址

4,常用操作

读取值:方法一:get(key,默认返回值)输出key对应的value值,没有时返回默认值

方法二:setdefault(key,defeaut=none)输出key对应的value值,没有时默认插入新增

两种方法的区别在于第2种有插入新增的功能

>>> r=d1.get('a')

>>> print(r)

None

>>> d1.get('a','1')

'1'

>>> d1

{'b': 2, 'c': 3, 'd': 4, 'e': 5}

>>> d1.setdefault('a',1)

1

增加键值对:update()>>> d2=dict(ss=11,tt=22)

>>> d1.update(d2)

>>> d1

{'b': 2, 'c': 3, 'd': 4, 'e': 5, 'a': 1, 'ss': 11, 'tt': 22}

>>> d1.update(gg=22)

>>> d1

{'b': 2, 'c': 3, 'd': 4, 'e': 5, 'a': 1, 'ss': 11, 'tt': 22, 'gg': 22}

删除键值对pop(),popitem(),clear(),del>>> d1.pop('b')

2

>>> d1

{'c': 3, 'd': 4, 'e': 5, 'a': 1, 'ss': 11, 'tt': 22, 'gg': 22}

>>> d1.popitem()

('gg', 22)

>>> d1.popitem()

('tt', 22)

>>> d1

{'c': 3, 'd': 4, 'e': 5, 'a': 1, 'ss': 11}

>>> d1.clear()

>>> d1

{}

>>> d1= {'b': 2, 'c': 3, 'd': 4, 'e': 5, 'a': 1}

>>> del d1['a']

>>> d1

{'b': 2, 'c': 3, 'd': 4, 'e': 5}

5,其他方法

items:以列表返回键值元组数组>>> d2.items()

dict_items([('c', 3), ('d', 4), ('e', 5), ('a', 1), ('ss', 11)]

keys()以列表返回所有键值>>> d2.keys()

dict_keys(['c', 'd', 'e', 'a', 'ss'])

values()以列表返回所有值>>> d2.values()

dict_values([3, 4, 5, 1, 11])

len()查询有几个键值对>>> len(d1)

5

key in dict只能判断key是否在字典中>>> 'a' in d1

True

copy()将字典复制给另一个变量>>> s2=d2.copy()

>>> s2==d2

True

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值