gpt4 book ai didi

python - 使用 python map 将元组中的类型 func 应用于字符串列表

转载 作者:太空宇宙 更新时间:2023-11-03 14:24:10 25 4
gpt4 key购买 nike

我有一个包含所有字符串的“标记”列表和一个形式为 (fieldname,fieldtype) 的元组列表例如

ds = ['1','1','1','1','1']
fs = [('type',str),('value',int),('hidden',bool),('length',int),('pieces',str)

我想制作一个具有以下形式的字典 v

v = {'type':'1','value',1,'hidden':True,'length':1,'pieces','1')

我目前的效率非常低(我一次将元组中的类型 func 映射到列表中的元素)

v = {}
for j in xrange(len(fs)):
v[fs[j]] = map(fs[j][1],[ds[j]])[0]

我怎样才能使它高效且易于阅读?我已经尝试过 lambda 等。如果这是一次性的事情,我会手动完成,但是有多个元组列表,其中一些有 50 个元素长。

最佳答案

您可以 zip()列表并将 fs 中定义的函数应用于适当的 ds 值:

>>> ds = ['1','1','1','1','1']
>>> fs = [('type',str),('value',int),('hidden',bool),('length',int),('pieces',str)]
>>> {key: f(value) for (key, f), value in zip(fs, ds)}
{'hidden': True, 'type': '1', 'length': 1, 'value': 1, 'pieces': '1'}

关于python - 使用 python map 将元组中的类型 func 应用于字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23134514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com