gpt4 book ai didi

python - 如何在Python中通过属性值获取数组列表中的对象

转载 作者:行者123 更新时间:2023-11-30 23:31:32 26 4
gpt4 key购买 nike

我正在尝试编写一个 Sublime Text 2 插件并在 .subilme-settings 文件中获取一些值。

{
"files":
[
{
"name" : "Markdown",
"extension" : ".md"
},{
"name" : "Python",
"extension" : ".py"
},{
"name" : "Sublime Text Setting",
"extension" : ".sublime-settings"
}
]
}

这是我第一次使用Python,我不知道该怎么做,确实存在这样的东西:

my_array.indexOf({"extension":".py"})

最佳答案

Python 列表确实有一个index方法。但它只找到等于参数的值,而不是具有与您的部分值匹配的参数的值。

Python 中确实没有任何东西可以像这样找到部分结构匹配;您可以搜索/过滤/等等。等式或谓词函数,但您必须自己编写其他任何内容。

最简单的方法是使用循环。您可以明确地编写它:

for index, element in enumerate(my_array):
if element["extension"] == ".py":
return index

...或理解式:

return next(index for index, element in enumerate(array)
if element["extension"] == ".py")

或者,您可以将匹配转换为函数,并将其传递给filter,或者将其用作更复杂的高阶函数中的key函数,但这里似乎没有任何真正的优势。

当然,如果您愿意,您可以编写自己的类似 indexOf 的函数来匹配部分结构。

关于python - 如何在Python中通过属性值获取数组列表中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19868404/

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