需要帮助避免在条件或模式测试中列出列表
我们如何使用条件或模式测试使我们的函数接受除列表之外的任何符号作为输入?
How can we use a conditional or pattern test to make our function accept any symbols as input except for lists?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用
Except
:您可以将其与
替代
(中缀运算符|
)排除几件事:编辑:也合并评论中的答案:
如果
expr
是一个列表(有headList
) 和False
否则。MatchQ[expr, _List]
和Head[expr]===List
是完成相同任务的等效方法。Use
Except
:You can combine that with
Alternatives
(infix operator|
) to exclude several things:Edit: Consolidating answers from the comments too:
ListQ[expr]
will returnTrue
ifexpr
is a list (has headList
) andFalse
otherwise.MatchQ[expr, _List]
andHead[expr]===List
are equivalent ways to accomplish the same thing.