gpt4 book ai didi

python - 如何压缩这个?

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

我有一本字典中的字典。我想计算这些词典中有多少个将元素“status”设置为“connecting”。

这是我的工作代码:

connecting = 0
for x in self.servers:
if self.servers[x]["status"] == "connecting": connecting += 1

有没有办法压缩这个?我在想类似的事情:

connecting = [1 if self.servers[x]["status"] == "closed" else 0 for x in self.servers]

但它只返回 0 和 1 的列表,不会将 1 添加到连接中,这是我所期望的。

最佳答案

您可以在 sum 函数中使用生成器表达式:

sum(x["status"]=="connecting" for x in self.servers.values()) 

请注意,由于 x["status"]=="connecting" 的结果是一个 bool 值,如果它是 True python 会将其评估为 1,所以最后它会返回符合条件的词典数量。

关于python - 如何压缩这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33738355/

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