首页 > 解决方案 > 如何从 python 列表中生成具有给定值的键:值列表

问题描述

我必须解决以下任务。首先,我使用 pyscard(与智能卡交互的 python 模块)来查询连接到主机的智能卡读卡器。这很好用,并为我提供了已连接读者的列表。

为了使这个列表可以通过facter 提供给puppet,我需要key:value 形式的列表,我可以使用json.dumps(list) 进行转换并通过自定义事实使用它。

实际问题是:如何将键(0..8)添加到 pyscard 列表中的给定值。

最后,输出应该类似于 Reader 0: REINER SCT cyberJack ecom_a (0856136421) 00 00

提前致谢

标签: pythonpuppetfacter

解决方案


使用字典理解将列表转换为字典。

lis = ["reader one", "reader two", "reader three"]
d={'reader '+str(k):v for k,v in enumerate(lis)}

输出:

{'reader 0': 'reader one',
 'reader 1': 'reader two',
 'reader 2': 'reader three'}

推荐阅读