首页 / 知识
使用’in’匹配数组中Python对象的属性
2023-04-11 13:57:00

Using 'in' to match an attribute of Python objects in an array我不记得我是否在做梦,但我似乎还记得有一个函数可以执行以下操作:
我看了看文档,但是这种事情并不属于列出的任何明显的标题
使用列表推导会建立一个临时列表,如果要搜索的序列很大,则该列表可能会占用您的所有内存。即使序列不大,构建列表也意味着在 通过使用生成器表达式可以避免使用临时列表:
现在,只要
正如@Matt所建议的,如果
您是否正在寻找具有特定属性的对象列表?如果是这样,列表理解是执行此操作的正确方法。
您总是可以自己写一个:
可以处理任何迭代的对象,无论是元组,列表还是其他。 我喜欢python,它使像这样的东西变得非常简单,并且没有不必要的麻烦,并且在使用中,像这样的东西非常优雅。 不,你不是在做梦。 Python有一个非常出色的列表理解系统,它使您可以优雅地操作列表,并且根据要完成的工作,可以通过两种方法完成。从本质上讲,您正在说的是"对于符合条件的列表中的项目",然后您就可以遍历结果或将结果转储到新列表中。 我将在这里介绍Dive Into Python中的一个示例,因为它非常优雅,而且比我聪明。他们在这里获取目录中文件的列表,然后过滤匹配正则表达式条件的所有文件的列表。
例如,您可以在不使用正则表达式的情况下执行此操作,例如对于任何表达式在结尾处返回true进行匹配的情况。还有其他一些选项,例如使用filter()函数,但是如果我要选择的话,我会选择它。 埃里克·西普尔
您正在考虑的功能可能是
如果要检查列表是否包含id == 12的对象,则一种简洁有效的方法(即不会不必要地遍历整个列表)是:
如果要在attrgetter中使用'in',同时仍保留列表的延迟迭代:
code> 我所想的可以使用列表理解来实现,但是我认为有一个函数可以稍微整洁地完成此任务。 即'bar'是对象列表,所有对象均具有'id'属性 神话般的功能方式:
清单理解方式:
回想起来,列表理解方式还是很简洁的。 如果您打算搜索任何大小合适的东西,那么最好的选择是使用字典或集合。否则,您基本上必须遍历迭代器的每个元素,直到获得所需的元素为止。 如果这不一定是对性能敏感的代码,则列表理解方法应该起作用。但是请注意,它效率很低,因为它遍历了迭代器的每个元素,然后再次遍历迭代器,直到找到所需的内容为止。 请记住,python具有最高效的哈希算法之一。利用它来发挥您的优势。 我认为:
是您的想法。当尝试查看python的字典(哈希表的python版本)中的某个键是否存在时,有两种检查方法。首先是字典附带的 那应该回答你的问题。
现在,将话题与先前给出的列表理解答案联系在一起(稍微清晰一点),这有点偏离主题了。列表推导从带有修饰符的基本for循环构造一个列表。作为一个示例(稍微澄清一下),可以在列表理解中使用
假设您有一个二维字典
注意语句末尾的 |
最新内容
相关内容
python如何确定是否为可迭代对象
python如何确定是否为可迭代对象,培训,元素,索引,对象,整数,字典,函数,类型,下标,模块,迭代可以理解为,任意的集合使用for循环遍历python中,迭pythoneval函数作用
pythoneval函数作用,培训,字符串,函数,作用,表达式,对象,结果,引号,计算器,以上,pythoneval(str)函数很强大,官方解释为:将字符串str当成有效的pythonprint函数不要换行怎么写
pythonprint函数不要换行怎么写,培训,灵活,函数,对象,参数,文件,空格,结尾,字符,下面,从语法上讲,调用python3.0的print函数有如下的形式:printpython如何自定义一个函数
python如何自定义一个函数,代码,名称,培训,函数,圆括号,参数,定义,表达式,选择性,字符串,python函数是组织好的,可重复使用的,用来实现单一,或相python内置函数在哪
python内置函数在哪,培训,函数,包装,模块,对象,字符串,列表,数据类型,属性,类型,所谓内置函数,就是在Python中被自动加载的函数,任何时候都可以python如何操作mysql数据库
python如何操作mysql数据库,培训,标准,项目,密码,数据库,接口,表字,操作,用户,机子,Python标准数据库接口为PythonDB-API,PythonDB-API为开发pythonrange函数怎么用
pythonrange函数怎么用,步长,培训,函数,负数,整数,语法,字母,实例,以上,以下,pythonrange()函数可创建一个整数列表,一般用在for循环中。函数python如何执行python文件
python如何执行python文件,代码,培训,文件,程序,命令,模式,事半功倍,后缀,文本,以上,用文本编辑器写Python程序,然后保存为后缀为.py的文件,就python函数如何不返回none
python函数如何不返回none,培训,函数,语句,变量,赋值,参数,实际,结果,字符串,语法,python中,用def语句创建函数时,可以用return语句指定应该返python怎么判断某一对象是否为字典
python怎么判断某一对象是否为字典,培训,名称,代码,情况,类型,实例,元素,字典,函数,对象,我们经常需要在Python代码中确定某个实例是什么类型python如何查看对象属性
python如何查看对象属性,培训,网络,系统,函数,对象,属性,变量,示例,实例,模块,在Python语言中,有些库在使用时,在网络上找到的文档不全,这就需要python怎么执行.py文件
python怎么执行.py文件,培训,位置,代码,文件,空格,路径,文件名,时候,右侧,单击,要运行一个已经编写好的.py文件,可以单击开始菜单,在“搜索程序