字典类型内置方法

字典类型内置方法

一、字典类型内置方法(dict)

  1. 用途:存多个值,但每一个值都有一个key与之对应,key对值有描述功能。多用于存的值表示的是不同的状态时,例如存的值有姓名、年龄、身高、体重、爱好。
  2. 定义:{}内用逗号分隔开多个元素,每一个元素都是key:value的形式,value可以的是任意数据类型,而key通常应该是字符串类型,但是key必须为不可变类型。
dic = {'a':1,'b':x} # dic = dict({'a':1,'b':2})

print(f"dic:{dic}")

dic :{'a':1,'b:2'}

dic = dict(a=1,b=2,c=3)
print(dic)

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

dic = {1:'a',0:'b'}
print(dic[0]) # 无法区分dic列表,还是字典,并且key不在具有描述信息

b

dic = {[1,2]:'a',0:'b'} #报错
  1. 常用操作+内置方法:常用操作和内置方法分为优先掌握、需要掌握两个部分。

一、优先掌握

  1. 按key存取值:可存可取
  2. 长度len
  3. 成员运算in和not in
  4. 删除del
  5. 键keys()、值values()、键值对items()
  6. 循环
  7. 按key存取值:可存可取
# dic之按key取值
dic = {'a':1,'b':2}
print(dic['a'])
dic['a'] = 3
print(dic['a'])

1
3

  1. 长度len
# dic之长度len
dic = {'a':1,'b':2}
print(len(dic))

2

  1. 成员运算in和not in
# dic之成员运算in和not in
dic = {'a':1,'b':2}

print('a' in dic)
print(1 in dic)

True
False

  1. 删除
dic = {'a':1,'b':2}
del dic['a']

print(dic.get('a'))

None

# dic之删除pop()
dic = {'a':1,'b':2}
dic.pop('a')
print(dic.pop('b'))
print(dic.get('a'))

2 None

# dic之删除popitem()
dic = {'a':1,'b':2}

print(dic.popitem())

('b', 2)

  1. 键keys()、值values()、键值对items()
# dic之键keys()、值values()、键值对items(),python2中取出的是列表(鸡蛋);python3中取出的是元组(鸡)
dic = {'a':1,'b',2}

print(dic.keys())
print(dic.values())
print(dic.items())

dict_keys(['a', 'b']) dict_values([1, 2]) dict_items([('a', 1), ('b', 2)])

  1. 循环
# dic之循环
# dic是无序的,但是python3采用了底层优化算法,所以看起来是有序的,但是python2中的字典是无序
dic = {'a':1,'b':2,'c':3,'d':4}

for k, v in dic.items():
  print(k, v)

a 1 b 2 c 3 d 4

二 、需要掌握

  1. get
  2. update
  3. fromkeys
  4. setdefault
  5. get()
# dic之get()
dic = {'a':1,'b':2}
print(dic.get('a'))
print(dic.get('b'))

1 2

  1. update
# dic之update()
dic1 = {'a':1,'b':2}
dic2 = {'c':3}
dic1.update(dic2)
print(dic1)

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

  1. fromkeys()
#dic之fronleys(),有指定key不会改变值:无指定key则改变值
dic = dic.fromkeys(['name','age','sex'],None)
print(dic)

{'name': None, 'age': None, 'sex': None}

  1. setdefault()
# dic之setdefault(),有指定key不会改变值,无指定key则改变值
dic = {'a':1,'b':2}
print(dic.setdefault('a',3))
print(dic)
print(dic.setdefault('c',3))
print(dic)

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

posted @ 2019-08-05 22:12  Daoqi  阅读(153)  评论(0编辑  收藏  举报