Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在列表理解/映射/过滤器内分配标识符_Python_List Comprehension_Identifier - Fatal编程技术网

Python 在列表理解/映射/过滤器内分配标识符

Python 在列表理解/映射/过滤器内分配标识符,python,list-comprehension,identifier,Python,List Comprehension,Identifier,我想将lambda表达式传递给捕获外部变量l的过滤器。我希望l成为传递给筛选器的列表。假设该列表来自其他列表理解/映射/筛选。是否可以为该列表分配标识符(在这种情况下为l)?像这样: filter((lambda x : len([z for z in l if z == x]) == 1), l@[1,1,2,3,4,4,5,6,6] ) 我只是使用了@,因为在Haskell中,您可以以类似的方式使用@ 是否有一些简洁的语法,或者我是否需要将操作分成几行,并以正常方式分配l?无法为过滤器的第

我想将lambda表达式传递给捕获外部变量
l
的过滤器。我希望
l
成为传递给筛选器的列表。假设该列表来自其他列表理解/映射/筛选。是否可以为该列表分配标识符(在这种情况下为
l
)?像这样:

filter((lambda x : len([z for z in l if z == x]) == 1), l@[1,1,2,3,4,4,5,6,6] )
我只是使用了
@
,因为在Haskell中,您可以以类似的方式使用
@


是否有一些简洁的语法,或者我是否需要将操作分成几行,并以正常方式分配
l

无法为
过滤器的第二个参数指定“动态”名称


即使是这样,我认为Python代码应该更明确(请参见“”),我建议将代码分成两行或更多行。

不清楚函数应该做什么。你能解释一下吗?你想要一个列表,在列表中
@
之后的索引处包含list
l
的内容吗?@Graipher我只想将列表绑定到@to
l
之后。为了激发这一点,我说“假设列表是其他计算的结果,比如列表理解”。所以你基本上是在寻找列表理解
[x对于l中的x,如果l.count(x)==1]
。换句话说,可能有不同的方法来实现你想要的,如果您展示一些示例输入和预期输出,我们可以为您提供帮助。如果列表理解不是解决方案,您可能必须将其作为生成器或显式for循环编写,或者。。。