SameQ

lhs===rhs

lhs 等于 rhs 时产生 True,否则产生 False.

更多信息

  • SameQ 要求表达式间的精确相等,除了在最后的二进制数位上不相同被认为是 Real 数上的相等外.
  • 2===2. 给出 False.
  • 当所有 相等时,e1===e2===e3 给出 True.
  • SameQ[]SameQ[expr] always yield总是生成 True. »

背景

  • 如果 expr1expr2 相同,则 SameQ[expr1,expr2] 返回 True,否则返回 False. 在这里,相同表示表达式 expr1expr2 的底层表示 FullForm 之间有确切的对应关系,对于实数,则下面这种情况除外,即如果实数仅最后一个二进制位数不同仍被认为 SameQ 成立. SameQ[expr1,expr2] 可以是使用三重等号的输入,如 expr1===expr2. 多参数形式SameQ[expr1,expr2,](也可以输入为 expr1===expr2===)当且仅当所有表达式 expri 均相同时返回 True.
  • 如果表达式的底层表示相同,则其不同输入形式可以是 SameQ,例如 n! ===Factorial[n] 返回 True. 另一方面,对于在数值上相等但没有相同表示形式的数字,SameQ 会对其进行区分. 例如, SameQ[1,1.]SameQ[1.,1.+0.I] 均返回 False. 此行为与 Equal 所表现的相等性不同,它执行的是相等性测试,并且在无解的情况下保持不被运算.
  • SameQ 只考虑字面上的对应,而不是同构. 在图论情况下,应该使用 IsomorphicGraphQ 检查同构的一致性. (当然,在使用 CanonicalGraph 将图转换为规范化形式后,则可以使用SameQ.)
  • SameQ 与许多其他符号相关. Set[expr1,expr2](可以使用单等号语法 expr1=expr2 输入)运算 expr2,并将结果赋值给 expr1,而 Equal[expr1,expr2](可以使用双等号语法 expr1==expr2 输入),如果 expr1expr2 在数值上相等,则返回 True. UnsameQ(可以输入为 =!=)则是 SameQ 的逆.
  • PossibleZeroQ 可用于指示给定表达式在 SameQ 返回 False 的某些情况下是否具有值 . 例如SameQ[Erf[Log[4]+2Log[Sin[Pi/8]]]-Erf[Log[2-Sqrt[2]]],0] 返回 False,而在其第一个参数上调用 PossibleZeroQ 返回 True(连同一条表明无法严格建立零值的消息). 当 SameQEqual 不能奏效的时候,有时可以使用像 SimplifyFullSimplifyRootReduce 等符号式简化函数来严格建立等量关系 (包括在刚才给出的例子中).

范例

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

基本范例  (2)

测试两个表达式是否完全相等:

== 保持符号形式,除非给出字面上的值:

完全形式:

范围  (4)

测试字符串的相等性:

以不同方法表示的数是不相同的:

== 仍然视它们是相同的:

最后二进制位不同的近似数依然认为是相等的:

测试多个表达式是否是相等的:

应用  (1)

生成一个 Kronecker 符号 (恒等) 张量:

属性和关系  (4)

SameQ 接受任意数量的参数:

如果 SameQ[expri,exprj] 对于所有 ij 均为 True,则 SameQ[expr1,expr2,] 给出 True

如果其中一个表达式与其他表达式不同,则 SameQ 给出 False

SameQ[expr1,expr2] 等价于 !UnsameQ[expr1,expre2]

如果参数的数量不是 2,SameQ[]!UnsameQ[] 不等价:

SameQ[]SameQ[expr] 总是给出 True

Wolfram Research (1988),SameQ,Wolfram 语言函数,https://reference.wolfram.com/language/ref/SameQ.html.

文本

Wolfram Research (1988),SameQ,Wolfram 语言函数,https://reference.wolfram.com/language/ref/SameQ.html.

CMS

Wolfram 语言. 1988. "SameQ." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/SameQ.html.

APA

Wolfram 语言. (1988). SameQ. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/SameQ.html 年

BibTeX

@misc{reference.wolfram_2024_sameq, author="Wolfram Research", title="{SameQ}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/SameQ.html}", note=[Accessed: 21-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_sameq, organization={Wolfram Research}, title={SameQ}, year={1988}, url={https://reference.wolfram.com/language/ref/SameQ.html}, note=[Accessed: 21-November-2024 ]}