Python--字典中的函数与方法

字典是一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {key1 : value1, key2 : value2, key3 : value3 }

一、字典的函数

1、len(字典名):

返回键的个数,即字典的长度

dic = {'a':123,'b':456,'c':789,'d':567}
print(len(dic))
# 4

2、str(字典名):

将字典转化成字符串

dic = {'a':123,'b':456,'c':789,'d':567}
print(str(dic))
# {'a': 123, 'b': 456, 'c': 789, 'd': 567}

3、type(字典名):

查看字典的类型

dic = {'a':123,'b':456,'c':789,'d':567}
print(type(dic))
# <class 'dict'>

二、字典的内置方法:

1、clear( ):

删除字典内所有的元素

dic = {'a':123,'b':456,'c':789,'d':567}
dic.clear()
print(dic)
# {}

2、copy( ):

浅拷贝一个字典

dic = {'a':123,'b':456,'c':789,'d':567}
dic_two = dic.copy()
print(dic)
# {'a': 123, 'b': 456, 'c': 789, 'd': 567}
print(dic_two)
# {'a': 123, 'b': 456, 'c': 789, 'd': 567}

3、fromkeys(seq[,value]):

创建一个新字典,seq作为键,value为字典所有键的初始值(默认为None)

dic = dict.fromkeys('abcd')
# 默认为 None
print(dic)
# {'a': None, 'b': None, 'c': None, 'd': None}

dic = dict.fromkeys('abc',1)
print(dic)
# {'a': 1, 'b': 1, 'c': 1}

4、get(key,default = None):

返回指定的键的值,如果键不存在,则返会 default 的值

dic = {'a':1,'b':2,'c':3,'d':4}
print(dic.get('b'))
# 2
print(dic.get('e',5))
# 5

5、成员运算符 in、not in:

查看 键 是否在字典中

dic = {'a':1,'b':2,'c':3,'d':4}
print('a' in dic)
# True
print('a' not in dic)
# False

6、items( ):

返回键值对的可迭代对象,使用 list 可转换为 [(键,值)] 形式

dic = {'a':1,'b':2,'c':3,'d':4}
print(dic.items())
# dict_items([('a', 1), ('b', 2), ('c', 3), ('d', 4)])
print(list(dic.items()))
# [('a', 1), ('b', 2), ('c', 3), ('d', 4)]

7、keys( ):

返回一个迭代器,可以使用 list() 来转换为列表

dic = {'a':1,'b':2,'c':3,'d':4}
print(dic.keys())
# dict_keys(['a', 'b', 'c', 'd'])
print(list(dic.keys()))
# ['a', 'b', 'c', 'd']

8、setdefault(key,default = None):

如果键存在于字典中,则不修改键的值

如果键不存在于字典中,则设置为 default 值

dic = {'a':1,'b':2,'c':3,'d':4}
dic.setdefault('a',8)
print(dic)
# {'a': 1, 'b': 2, 'c': 3, 'd': 4}

# 如果键不存在于字典中,则设置为 default 值
dic = {'a':1,'b':2,'c':3,'d':4}
dic.setdefault('e',5)
print(dic)
# {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

9、update(字典对象):

将字典对象更新到字典中

dic = {'a':1,'b':2,'c':3,'d':4}
dic_two = {'f':6}
dic.update(dic_two)
print(dic)
# {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'f': 6}

10、values( ):

返回一个可迭代对象,使用 list 转换为字典中 值 的列表

dic = {'a':1,'b':2,'c':3,'d':4}
print(list(dic.values()))
# [1, 2, 3, 4]

11、pop(key[,default]):

删除字典中 key 的值,返回被删除的值。key 值如果不给出,则返回default的值

dic = {'a':1,'b':2,'c':3,'d':4}
print(dic.pop('a',6))
# 1 , 返回删除的值
print(dic)
# {'b': 2, 'c': 3, 'd': 4}
print(dic.pop('e','字典中没有该值'))
# 字典中没有该值 , 如果字典中不存在该键,则返回 default 的值
print(dic)
# {'b': 2, 'c': 3, 'd': 4}

12、popitem( ):

随机返回一个键值对(通常为最后一个),并删除最后一个键值对

dic = {'a':1,'b':2,'c':3,'d':4}
print(dic.popitem())
# ('d', 4)
print(dic)
# {'a': 1, 'b': 2, 'c': 3}
print(dic.popitem())
# ('c', 3)
print(dic)
# {'a': 1, 'b': 2}

猜你喜欢

转载自blog.csdn.net/yuan_ahui/article/details/126073509