搞懂Python字典的基本操作
字典是无序可变的序列,元素以“键值对(key-value)”的形式存储。
字典相对于列表(list)和元组(tuple)是有序的序列。
字典中的元素是通过键来存取的,列表是通过下标索引存取的。
字典用 { } 标识,是一个键(key) : 值(value) 的集合,key值必须保障唯一。
字典格式为{'key':'value1', 'key2':'value2', ..., 'keyn':valuen}
字典键必须是唯一的,但值不需要,值可以取任何数据类型。
dict = {}
dict['name'] = "lidihuo"
dict[1] = "Hello World"
dict1 = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
dict2 = {(1,2,3): 'great', 30: [1,2,3]} # 使用元组和列表作为key和value
print(dict['name']) # 输出键为 'name' 的值
print(dict[1]) # 输出键为1的值
print(dict1) # 输出完整的字典
print(dict1.keys()) # 输出所有键
print(dict1.values()) # 输出所有值
print(dict2) # 输出完整的字典
lidihuo
Hello World
{'name': 'lidihuo', 'course': 'python', 'site': 'www.lidihuo.com'}
dict_keys(['name', 'course', 'site'])
dict_values(['lidihuo', 'python', 'www.lidihuo.com'])
{(1, 2, 3): 'great', 30: [1, 2, 3]}
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
print(dic['name']) # 输出键对应的值
lidihuo
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
print(dict.get('name'))
lidihuo
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
dict['name'] = 'hello' # 更新 name值
dict['place'] = 'china' # 添加值
print(dict) # 输出键对应的值
lidihuo
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
del dict['name'] # 删除单一键
print(dict) # 输出键对应的值
dict.clear() # 删除单一键
print(dict) # 输出键对应的值
{'course': 'python', 'site': 'www.lidihuo.com'}
{}
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
print('name' in dict) # 结果应为True
print('hello' in dict) # 结果应为False
True
False
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
print(dict.keys()) # 返回字典中的所有键(key)
print(dict.values()) # 返回字典中所有键对应的值(value)
print(dict.items()) # 返回字典中所有的键值对(key-value)
print(dict.copy()) # 拷贝一个具有相同键值对的新字典
dict.update({'name': 'Jack','hello':'world'}) # 如果己存在对应的键值对,则覆盖,否则新添加
print(dict)
dict.pop('name') # 删除指定的键值对
print(dict)
dict.popitem() # 随机删除一个键值对
print(dict)
dict_keys(['name', 'course', 'site'])
dict_values(['lidihuo', 'python', 'www.lidihuo.com'])
dict_items([('name', 'lidihuo'), ('course', 'python'), ('site', 'www.lidihuo.com')])
{'name': 'lidihuo', 'course': 'python', 'site': 'www.lidihuo.com'}
{'name': 'Jack', 'course': 'python', 'site': 'www.lidihuo.com', 'hello': 'world'}
{'course': 'python', 'site': 'www.lidihuo.com', 'hello': 'world'}
{'course': 'python', 'site': 'www.lidihuo.com'}
temp = '我是%(name)s平台, 本章讲解的是%(course)s课程, 具体内容可访问%(site)s网站查看'
dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}
print(temp % dict)
我是lidihuo平台, 本章讲解的是python课程, 具体内容可访问www.lidihuo.com网站查看
序号 | 函数及描述 | 实例 |
1 | len(dict) 计算字典元素个数,即键的总数。 |
>>> dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'} >>> len(dict) 3 |
2 | str(dict) 输出字典,以可打印的字符串表示。 |
>>> dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'} >>> str(dict) "{'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'}" |
3 | type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。 |
>>> dict = {'name': 'lidihuo','course':'python', 'site': 'www.lidihuo.com'} >>> type(dict) <class 'dict'> |
序号 | 函数及描述 |
1 | radiansdict.clear() 删除字典内所有元素 |
2 | radiansdict.copy() 返回一个字典的浅复制 |
3 | radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 |
4 | radiansdict.get(key, default=None) 返回指定键的值,如果键不在字典中返回 default 设置的默认值 |
5 | key in dict 如果键在字典dict里返回true,否则返回false |
6 | radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组 |
7 | radiansdict.keys() 返回一个迭代器,可以使用 list() 来转换为列表 |
8 | radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
9 | radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里 |
10 | radiansdict.values() 返回一个迭代器,可以使用 list() 来转换为列表 |
11 | pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。 |
12 | popitem() 随机返回并删除字典中的最后一对键和值。 |