python字典知识点_Python基础知识点总结:【字典】【字典的功能】【布尔值】

字典(dict)

基本结构:

d = {key1 : value1, key2 : value2 }

dict = {'K1': 1, 'K2': 2, 'K3': '3'}key : value称为字典的键值对。

每个键 key和值value 之间用冒号 : 分割

每个键值对(也就是字典的一个元素)之间用逗号 , 分割

整个字典包括在花括号 { } 中

字典是无序的(所以不存在切片)

值(value)可以取任何数据类型,但键(key)必须是不可变的(列表和字典不能作为字典的key)

(键就相当于地址,首先得固定,而且不能重复,键一般是唯一的,如果重复最后的一个键值对会替换前面的)

字典的功能

先给一个很长的字典(手动捂脸),这不是为难人嘛(难的都明白了,简单的不在话下)

d = {'K1': 18, 2: True, 'K3':[11,[1,6],('a',88),22,33,{'KK1':'VV1','KK2':'VV2','KK3':'VV3'}],'K4':(11,22,33,44)}

以下操作的针对这个长长的字典 d 的哦

1.索引取值

#通过索引 键(key)来获取一级元素 v1 = d['K1'] #通过索引来获取‘VV1’ v2 = d['K3'][5]['KK1'] print(v1,v2) #执行结果 VV1

2.clearD.clear() -> None. Remove all items from D.

v = d.clear() print(v) #执行结果: None

3.copyD.copy() -> a shallow copy of D

v = d.copy()

print(v)

4.del

#利用索引,通过del删除字典中的元素

del d['K1']

del d['K3'][1][1]

print(d)

5.for循环

#for循环返回键(key) for item in d: print(item) #执行结果: K1 K3 K4

#for循环返回值value for item in d.values(): print(item) #执行结果 True [11, [1, 6], ('a', 88), 22, 33, {'KK1': 'VV1', 'KK2': 'VV2'}] (11, 22, 33, 44)

#for循环同时返回键(key)和值(value) for k,v in d.items(): print(k,v) #执行结果 K1 18 True K3 [11, [1, 6], ('a', 88), 22, 33, {'KK1': 'VV1', 'KK2': 'VV2'}] K4 (11, 22, 33, 44)

6.fromkeys根据序列,创建字典,并指定统一的值

Create a new dictionary with keys from iterable and values set to value.

v = dict.fromkeys(['k1','k2','k3'],666)

print(v)

#执行结果

{'k1': 666, 'k2': 666, 'k3': 666}

7.getReturn the value for key if key is in the dictionary, else default.

根据key获取值,key不存在时,可以指定返回值(默认情况下返回None)

v1 = d.get('K1') v2 = d.get('K2') v3 = d.get('K2',666) print(v1,v2,v3) #执行结果: None

8. popD.pop(k[,d]) -> v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

#删除指定的元素,并将删除的值返回

d = {'k1':'v1', 'k2':'v2'}

v = d.pop('k2')

print(v,d)

#执行结果

v2 {'k1': 'v1'}

#第二个参数设置的意义:当要删除的对象不存在时,将第二个参数返回 #当要删除的对象不存在时,而第二个参数未设置,则报错 d = {'k1':'v1', 'k2':'v2'} v = d.pop('k3','不存在') print(v,d) #执行结果 不存在 {'k1': 'v1', 'k2': 'v2'}

9.popitemD.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple

but raise KeyError if D is empty.

#删除字典中最后一个元素,并将删除的键和值返回 d = {'k1':'v1', 'k2':'v2'} k,v = d.popitem() print(d,k,v) #执行结果: {'k1': 'v1'} k2 v2

10.setdefaultInsert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

#设置值,如果该键存在,则不设置,获取当前key对应的值 d = {'k1':'v1', 'k2':'v2'} v = d.setdefault('k1') print(v) #执行结果: v1

#设置值,如果该键不存在,则设置,获取设置的key对应的值 d = {'k1':'v1', 'k2':'v2'} v = d.setdefault('k3',666) print(v) #执行结果:

11.update

更新方式一:

#更新值,按照字典的形式,将对应key的值更新 #如果无对应key,将该key和对应的值加入原字典 d = {'k1': 'v1', 'k2': 'v2'} d.update({'k1': 'xhg', 'k2': 123, 'k3': 'v3'}) print(d) #执行结果 {'k1': 'xhg', 'k2': 123, 'k3': 'v3'}

更新方式二:

#按照 键=值 得形式对原字典进行更新 d = {'k1': 'v1', 'k2': 'v2'} d.update(k1 = 'xhg', k2 = 123, k3 = 'v3') print(d) #执行结果 {'k1': 'xhg', 'k2': 123, 'k3': 'v3'}

#判断键是否存在字典中

d = {'k1': 'v1', 'k2': 'v2'}

v = 'k1' in d

print(v)

#判断值是否存在在字典中

v = 'v1' in d.values()

print(v)

关于布尔值的补充

None '' () {} [] 0 ==>False

其余 ==>True

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值