本文主要是介绍python遍历键值对kw.items()、 kw.keys()、 kw.values()、enumerate(kw.keys()),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
代码如下:
运行报错如下:
我想要的输出结果为:
这里引用一段解释:
示例代码中 “for key,value in kw:” 其实是遍历 keys() 但是用了两个参数来接收,所以会报错 “ValueError: too many values to unpack”,修改成 “for key in kw:“ 可正常运行,但运行结果与示例代码给出的结果不一致(因为只有key的值),使用 ”for key, value in kw.items()“ 即可得出示例代码。
- 只遍历 keys 可以使用 ”for key in kw:“ 和 ”for key in kw.keys():“ 两种方法;
可以使用 “for idx, key in enumerate(kw.keys())“ 在遍历 keys 的同时给出序号(从 0 开始)- 只遍历 values 可以使用 ”for value in kw.values()“;
- 遍历键值对可以使用 ”for key, value in kw.items().
也就是
for key in kw: #遍历的是所有key值 for key, value in kw: #用了2个参数来去接收key值,所以报错 for key in kw.keys():#与for key in kw: 相同,遍历key for value in kw.values(): #遍历所有的value值 for index, key in enumerate(kw.keys()): #遍历key,用了index来接收key值的下标 for key,value in kw.items(): # 该用法才能正确遍历key和value
正确代码如下:
# -*- coding: UTF-8 -*-
def dump(index, default=0, *args, **kw):print('打印函数参数')print('---')print('index:', index)print('default:', default)for i, arg in enumerate(args):print(f'arg[{i}]: ', arg)for key, value in kw.items():print(f'keyword_argument {key}: {value}')print('')if __name__ == '__main__':dump(0)dump(0, 2)dump(0, 2, "Hello", "World")dump(0, 2, "Hello", "World", install='Python', run='Python Program')
运行结果为:
这篇关于python遍历键值对kw.items()、 kw.keys()、 kw.values()、enumerate(kw.keys())的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!