Python中字典(dict)的基本性质及使用方法

字典(dict)是一个元素集,其中每个元素为一个“键(key)—值(value)”对。

字典主要有以下性质:

(1)多类型。字典能存储任意类型的对象。同一个字典中的“键”和“值”类型均可不同。

(2)唯一性。同一个字典中的每个“键”都是唯一的,而“值”可以重复。

字典的构建遵循如下规则:

(1)不同元素用“,”(逗号)分隔。

(2)同一个元素中的“键”和“值”用“:”(冒号)分隔。

(3)整个字典用“{}”(花括号)所包括。

如下所示:

dict1 = {key1:value1, key2:value2}

1. 字典的初始化

创建字典时,可以使用dict()方法,也可以直接用“{}”来包括其中的元素。 

a = dict()
b = dict({1:'aaa',2:'bbb',3:'ccc'})
c = {1:'aaa',2:'bbb',3:'ccc'}
print(a)
print(b)
print(c)

Out:
{}
{1: 'aaa', 2: 'bbb', 3: 'ccc'}
{1: 'aaa', 2: 'bbb', 3: 'ccc'}

fromkeys用于根据元组(包括所有键)创建字典:

t = (1,2,3)
a1 = dict.fromkeys(t)
a2 = dict.fromkeys(t,'aaa')
print(a1)
print(a2)

Out:
{1: None, 2: None, 3: None}
{1: 'aaa', 2: 'aaa', 3: 'aaa'}

复制字典时,使用copy。

a = {1:'aaa',2:'bbb',3:'ccc'}
b = a
c = a.copy()

b.pop(3)

print(a)
print(b)
print(c)

Out:
{1: 'aaa', 2: 'bbb'}
{1: 'aaa', 2: 'bbb'}
{1: 'aaa', 2: 'bbb', 3: 'ccc'}

2. 字典元素的增加和修改

update用于向字典中增加元素,或修改字典中的元素。

a = {1:'aaa',2:'bbb',3:'ccc'}

a.update({4:'ddd'})  # 增加元素
print(a)

a.update({4:'abcd'})  # 修改元素
print(a)

Out:
{1: 'aaa', 2: 'bbb', 3: 'ccc', 4: 'ddd'}
{1: 'aaa', 2: 'bbb', 3: 'ccc', 4: 'abcd'}

若需要将2个字典合并,可以使用copy+update方法。

a = {1:'aaa',2:'bbb'}
b = {3:'ccc',4:'ddd'}

c = a.copy()
c.update(b)

print(c)

Out:
{1: 'aaa', 2: 'bbb', 3: 'ccc', 4: 'ddd'}

3. 字典元素的查询

 查询单个元素:已知“键”查询“值”时,“键”用“[]”(中括号)包括。

a = {1:'aaa',2:'bbb',3:'ccc'}
a1 = a[2]
print(a1)

Out:
bbb

判断某个“键”是否在字典中:

a = {1:'aaa',2:'bbb',3:'ccc'}
b = 3 in a
print(b)

Out:
True

 4. 字典元素的读取

popitem用于读取字典中的1个元素,同时将该元素从字典中删除。

a = {1:'aaa',2:'bbb',3:'ccc'}
t1 = a.popitem()
print(t1)
print(type(t1))
print(a)

Out:
(3, 'ccc')
<class 'tuple'>
{1: 'aaa', 2: 'bbb'}

5. 字典中所有元素的查看

items、keys、values等方法可以输出整个字典的元素、键、值:

a = {1:'aaa',2:'bbb',3:'ccc'}
items1 = a.items()
keys1 = a.keys()
values1 = a.values()

print(items1)
print(keys1)
print(values1)

print(type(items1))
print(type(keys1))
print(type(values1))

Out:
dict_items([(1, 'aaa'), (2, 'bbb'), (3, 'ccc')])
dict_keys([1, 2, 3])
dict_values(['aaa', 'bbb', 'ccc'])
<class 'dict_items'>
<class 'dict_keys'>
<class 'dict_values'>

使用items、keys、values等方法输出的元素、键、值等,可以转化为集合(set):

a = {1:'aaa',2:'bbb',3:'ccc'}
items1 = a.items()
keys1 = a.keys()
values1 = a.values()

s1 = set(items1)
s2 = set(keys1)
s3 = set(values1)

print(s1)
print(s2)
print(s3)

Out:
{(2, 'bbb'), (3, 'ccc'), (1, 'aaa')}
{1, 2, 3}
{'bbb', 'ccc', 'aaa'}

也可以转化为列表(list):

a = {1:'aaa',2:'bbb',3:'aaa'}

list1 = list(a.keys())
list2 = [key for key in a.keys()]
list3 = list(a.values())
list4 = [value for value in a.values()]

print(list1)
print(list2)
print(list3)
print(list4)

Out:
[1, 2, 3]
[1, 2, 3]
['aaa', 'bbb', 'aaa']
['aaa', 'bbb', 'aaa']

  4. 字典元素的删除

 pop用于根据“值”删除对应的元素。

a = {1:'aaa',2:'bbb',3:'ccc'}
a.pop(3)  # 删除键为3的元素
print(a)

Out:
{1: 'aaa', 2: 'bbb'}

clear用于清空字典,即删除所有元素。 

a = {1:'aaa',2:'bbb',3:'ccc'}
a.clear()
print(a)

Out:
{}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是Python字典使用方法: 1. 创建字典: ```python # 使用大括号创建空字典 my_dict = {} # 使用大括号创建带有键值对的字典 my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} # 使用 dict() 函数创建带有键值对的字典 my_dict = dict(key1='value1', key2='value2', key3='value3') # 从列表创建字典,列表的元素是由键值对组成的元组 my_dict = dict([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 2. 访问字典的值: ```python # 使用键来访问字典的值 value = my_dict['key1'] print(value) # 输出:value1 # 使用 get() 方法来访问字典的值,如果键不存在,则返回指定的默认值 value = my_dict.get('key2', 'default') print(value) # 输出:value2 # 使用 keys() 方法获取字典的所有键 keys = my_dict.keys() print(keys) # 输出:dict_keys(['key1', 'key2', 'key3']) # 使用 values() 方法获取字典的所有值 values = my_dict.values() print(values) # 输出:dict_values(['value1', 'value2', 'value3']) # 使用 items() 方法获取字典的所有键值对 items = my_dict.items() print(items) # 输出:dict_items([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 3. 更新字典: ```python 使用赋值语句更新字典的值 my_dict['key1'] = 'new value' print(my_dict) # 输出:{'key1': 'new value', 'key2': 'value2', 'key3': 'value3'} # 使用 update() 方法更新字典的值 my_dict.update({'key2': 'new value', 'key3': 'new value'}) print(my_dict) # 输出:{'key1': 'new value', 'key2': 'new value', 'key3': 'new value'} ``` 4. 删除字典的键值对: ```python # 使用 del 键字删除指定的键值对 del my_dict['key1'] print(my_dict) # 输出:{'key2': 'new value', 'key3': 'new value'} # 使用 pop() 方法删除指定的键值对,并返回被删除的值 value = my_dict.pop('key2') print(value) # 输出:new value print(my_dict) # 输出:{'key3': 'new value'} # 使用 clear() 方法清空字典的所有键值对 my_dict.clear() print(my_dict) # 输出:{} ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值