我必须解决以下任务。首先,我使用 pyscard(与智能卡交互的 python 模块(来查询连接到主机的智能卡读卡器。这工作得很好,并为我提供了连接的读者列表。
要通过 facter 使此列表可用于 puppet,我需要 key:value 形式的列表,我可以使用 json.dumps(list( 进行转换并通过自定义事实使用它。
实际问题是:如何将键 (0..8( 添加到 pyscard 列表中的给定值中。
最后,输出应该类似于 Reader 之类的东西 0: 莱纳 SCT 网络杰克 ecom_a (0856136421( 00 00
提前致谢
使用字典理解将列表转换为字典。
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'}
一种方法是使用zip
>>> l0 = ["reader one", "reader two", "reader three"]
>>> dict(zip(range(len(l0)),l0))
{0: 'reader one', 1: 'reader two', 2: 'reader three