一、keys的定义
keys()
是字典(dict)的一个方法,用于取出所有键值(key)并以列表(list)形式返回。它没有参数,可以在循环和其他函数调用中使用。例如:
>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> d.keys()
dict_keys(['a', 'b', 'c'])
其中,d
是一个字典变量,键值为字符串类型,对应的值为整型。d.keys()
返回了一个字典视图(dict_view),包含了字典d
中所有的键(key)。
二、使用方法
1. 取出所有键
对于一个字典,我们可能需要取出其中所有的键值(key),方便我们进行某些操作,例如:
d = {'a': 1, 'b': 2, 'c': 3}
for k in d.keys():
print(k)
输出结果为:
'a'
'b'
'c'
我们可以从上面的代码中发现,通过使用keys()
方法,我们可以很容易地遍历字典中的每一个键(key)。
2. 判断一个键是否存在
在使用字典时,我们经常需要检查一个键是否存在于字典中。这时,我们可以使用in
运算符或者keys()
方法来实现,例如:
d = {'a': 1, 'b': 2, 'c': 3}
if 'a' in d.keys():
print('a exists in d')
输出结果为:
'a exists in d'
使用keys()
方法适用于需要进行多次判断的情况,例如:
d = {'a': 1, 'b': 2, 'c': 3}
keys = d.keys()
if 'a' in keys:
print('a exists in d')
if 'd' not in keys:
print('d does not exist in d')
输出结果为:
'a exists in d'
'd does not exist in d'
这样,我们可以避免在每次判断时都需要遍历整个字典来获取键(key)信息的情况。
3. 将keys转成列表类型
有时,我们需要将字典中的键(key)转换成列表(list)类型,以便于进行一些列表相关操作,例如:
d = {'a': 1, 'b': 2, 'c': 3}
keys_list = list(d.keys())
print(keys_list)
输出结果为:
['a', 'b', 'c']
因为keys()
方法返回的是一个字典视图(dict_view)对象,虽然可以进行遍历、判断等操作,但是它不能直接进行列表相关的操作,需要将其转换成列表类型。
4. 定义字典时利用keys进行初始化
在定义一个新的字典时,我们可以使用keys()
方法进行初始化,例如:
keys = ['a', 'b', 'c']
values = [1, 2, 3]
d = dict.fromkeys(keys, values)
print(d)
输出结果为:
{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [1, 2, 3]}
fromkeys()
方法使用可迭代对象(iterable)中的元素作为字典的键(key),并将对应的值初始化为给定的值,如果没有给出默认值,则默认为None
。在上面的代码中,我们将列表keys
的元素作为键(key),并通过引用同一个列表values
将所有的值初始化为相同的列表。
三、总结
keys()
方法是字典(dict)类型的一个方法,用于取出所有键值(key)并以列表(list)形式返回。通过keys()
方法,我们可以轻松地遍历字典的所有键(key),判断一个键是否存在于字典中,以及将键(key)转换成列表(list)类型。在定义一个新的字典时,我们也可以使用keys()
方法进行初始化。掌握了keys()
方法的使用,将有助于我们更加高效地使用字典(dict)类型。