要用 for 语句循环浏览 Python dictionary 对象的元素,在 dictionary 对象上使用下面的方法,它也可以与 list() 结合使用,得到 dictionary 中所有键和值的列表。
keys()
:对每个元素的键进行循环处理values()
:对每个元素值进行循环处理items()
:对每个元素的键和值进行循环处理
下面的字典对象是一个例子。
d = {'key1': 1, 'key2': 2, 'key3': 3}
键可以通过在for语句中转动字典对象获得,因为它是。
for k in d: print(k) # key1 # key2 # key3
keys(): 对每个元素的键进行循环处理
如上所述,可以通过转动 dictionary 对象获得 keys,因为它是在 for 语句中,但也可以使用 keys() 方法。
for k in d.keys(): print(k) # key1 # key2 # key3
keys()方法返回dict_keys类。如果你想做一个列表,你可以使用list()函数。
keys = d.keys() print(keys) print(type(keys)) # dict_keys(['key1', 'key2', 'key3']) # <class 'dict_keys'> k_list = list(d.keys()) print(k_list) print(type(k_list)) # ['key1', 'key2', 'key3'] # <class 'list'>
DICT_KEYS能够进行集合操作。
values(): 对每个元素值进行循环处理
如果你想对每个元素值进行for-loop处理,请使用values()方法。
for v in d.values(): print(v) # 1 # 2 # 3
values()方法返回dict_values类。如果你想做一个列表,你可以使用list()函数。
values = d.values() print(values) print(type(values)) # dict_values([1, 2, 3]) # <class 'dict_values'> v_list = list(d.values()) print(v_list) print(type(v_list)) # [1, 2, 3] # <class 'list'>
因为值可能重叠,所以不支持dict_values的set操作。
items(): 对每个元素的键和值进行循环处理
如果你想对每个元素的键和值都进行一个for循环处理,请使用 items() 方法。
for k, v in d.items(): print(k, v) # key1 1 # key2 2 # key3 3
(key, value)
因此,它可以作为一个元组被接收。
for t in d.items(): print(t) print(type(t)) print(t[0]) print(t[1]) print('---') # ('key1', 1) # <class 'tuple'> # key1 # 1 # --- # ('key2', 2) # <class 'tuple'> # key2 # 2 # --- # ('key3', 3) # <class 'tuple'> # key3 # 3 # ---
items()方法返回dict_items类。如果你想做一个列表,你可以使用list()函数。每个元素都是一个元组。(key, value)
items = d.items() print(items) print(type(items)) # dict_items([('key1', 1), ('key2', 2), ('key3', 3)]) # <class 'dict_items'> i_list = list(d.items()) print(i_list) print(type(i_list)) # [('key1', 1), ('key2', 2), ('key3', 3)] # <class 'list'> print(i_list[0]) print(type(i_list[0])) # ('key1', 1) # <class 'tuple'>
DICT_ITEMS也可以进行设置操作。