Qia*_* Li 3 wolfram-mathematica
例如,我可能有
{1, 2, 3, 4, 5} // Select[#1, ((*** + 1 &) > 2) &] &
Run Code Online (Sandbox Code Playgroud)
在这里,***也想成为#1,但不被认为是最外层的#1.有什么办法可以区分这两者吗?
谢谢.
我不确定我理解这个问题.你的预期输出是多少?... {2,3,4,5}?...如果是这样,插槽之间没有逻辑混淆:列表中第一个参数的每个元素都Select将被输入一个函数(第二个)参数).以下工作正常:
{1, 2, 3, 4, 5} // Select[#, ((# + 1) > 2) &] &
如果出现冲突,而不是插槽/符号表示法,您可以使用Function[{x,y,...},...]符号,例如
{1, 2, 3, 4, 5} // Select[#, Function[{x}, (x + 1) > 2]] &