gpt4 book ai didi

python - 在 Python 中采摘

转载 作者:IT老高 更新时间:2023-10-28 21:51:33 24 4
gpt4 key购买 nike

我开始阅读 underscore.js今天,它是一个 javascript 库,它添加了一些我在 Python 中习惯使用的函数式编程好东西。一种很酷的速记方法是pluck .

确实在 Python 中我经常需要提取一些特定的属性,并最终这样做:

users = [{
"name" : "Bemmu",
"uid" : "297200003"
},
{
"name" : "Zuck",
"uid" : "4"
}]
uids = map(lambda x:x["uid"], users)

如果下划线速记在 Python 中的某个地方,这是可能的:

uids = pluck(users, "uid")

添加当然是微不足道的,但在 Python 中的某个地方已经添加了吗?

最佳答案

只需在任何使用 uids 的函数中使用列表推导:

而不是

uids = map(operator.itemgetter("uid"), users)
foo(uids)

foo([x["uid"] for x in users])

如果您只希望 uids 进行迭代,则无需创建列表 - 而是使用生成器。 (将 [] 替换为 ()。)


例如:

def print_all(it):
""" Trivial function."""
for i in it:
print i

print_all(x["uid"] for x in users)

关于python - 在 Python 中采摘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9816545/

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