gpt4 book ai didi

python - Python 中有 operator.unpack 吗?

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

这个有内置版本吗

def unpack(f, a):
return f(**a) #or ``return f(*a)''

为什么unpack 不被认为是一个运算符并且位于 operator.* 中?

我正在尝试做类似的事情(但当然想要对同一类型问题的通用解决方案):

from functools import partial, reduce
from operator import add
data = [{'tag':'p','inner':'Word'},{'tag':'img','inner':'lower'}]
renderer = partial(unpack, "<{tag}>{inner}</{tag}>".format)
print(reduce(add, map(renderer, data)))

因为不使用 lambda 或推导式

最佳答案

这不是解决问题的方法。怎么样

print(''.join('<{tag}>{inner}</{tag}>'.format(**d) for d in data))

以更 Pythonic 的风格呈现相同的行为。

编辑:既然你似乎反对使用 Python 的任何优秀特性,那么这个怎么样:

def tag_format(x):
return '<{tag}>{inner}</{tag}>'.format(tag=x['tag'], inner=x['inner'])
results = []
for d in data:
results.append(tag_format(d))
print(''.join(results))

关于python - Python 中有 operator.unpack 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14859005/

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