FreeQ

FreeQ[expr,form]
如果在 expr 中没有匹配 form 的子表达式,则生成 True,否则生成 False.

FreeQ[expr,form,levelspec]
仅测试在 expr 的那些由 levelspec 指定的层的部分.

FreeQ[form]
表示可以应用于表达式的 FreeQ 的操作符格式.

更多信息和选项更多信息和选项

  • form 可以是一个模式.
  • FreeQ 使用标准层次规范:
  • n1 层到第 n
    Infinity从第 1 层到 Infinity
    {n}仅第 n
    {n1,n2}从第 n1 层到第 n2
  • levelspecFreeQ 中的默认值是 {0, Infinity}.
  • 正层数 n 包含了所有由 n 指标指定的 expr 的所有部分.
  • 负层数 -n 包含了深度 nexpr 所有部分.
  • 层数 -1 包含数字、符号和其它无子集的对象.
  • 层数 0 对应整个表达式.
  • 默认选项设置 Heads->TrueFreeQ 查找表达式的头部和它们的组成部分.
  • FreeQ 作用于相关性,检测数值,而非键值.
  • FreeQ[form][expr] 等价于 FreeQ[expr,form].

范例范例打开所有单元关闭所有单元

基本范例  (3)基本范例  (3)

测试列表是否不含 0

In[1]:=
Click for copyable input
Out[1]=

FreeQ 通常测试表达式中的所有层:

In[1]:=
Click for copyable input
Out[1]=

测试关联是否含有数值:

In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
1988年引入
(1.0)
| 2014年更新
(10.0)
Translate this page: