$ContextAliases

$ContextAliases

是一个全局变量,给出了从别名到上下文的映射的关联.

更多信息

  • $ContextAliases 的形式为 <|"alias1`""context1`","alias2`""context2`",|>,其中 aliasi 可以是可用于创建合法符号名称的任何字符串. contexti 必须是完全合格的上下文名称.
  • 在指代符号时,可用别名代替完全合格的上下文. 对于给定的符号 context`symbol,可用名称 alias`symbol 来代替.
  • 可直接对 $ContextAliases 进行修改. 调用 NeedsEndPackageEnd 时将自动更新. »

范例

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

基本范例  (1)

在特定上下文中定义符号:

Context1`Context2` 创建别名:

用别名指代符号:

删除别名:

范围  (8)

创建上下文别名  (4)

$ContextPath 必须是一个关联,其中的项的形式为 "alias""context`"

别名不能代表相对上下文:

别名必须形成合法的符号名称:

Needs 可以创建一个上下文别名:

使用 Developer Utilities Package 中的 PackedArrayQ

由于 "Developer`" 不在 $ContextPath 上,将不会解析不合格的符号名称:

使用上下文别名  (4)

在创建新符号之前解析别名:

别名可以代表多个层级的上下文:

输入符号的所有方式都遵守上下文别名:

清除单个别名:

清除所有上下文别名:

属性和关系  (9)

上下文别名适用于 ToExpression

在保持的计算中解析上下文别名:

Symbol 解析上下文别名:

BeginPackage 之后对别名所做的更改将在匹配的 EndPackage 之后恢复:

End 将恢复 $ContextAliases 在匹配的 Begin 之前的值:

默认情况下,Names 解析上下文别名:

使用 ResolveContextAliases 选项避免对别名进行解析:

NameQ 的行为方式同上:

默认情况下,Contexts 解析上下文别名:

使用 ResolveContextAliases 选项避免对别名进行解析:

默认情况下,Information 解析上下文别名:

Information 解析字符串模式时也使用别名:

使用 ResolveContextAliases 选项避免对别名进行解析:

不能将活动的别名添加到 $ContextPath

可能存在的问题  (1)

别名可以掩蔽现有的上下文:

因为别名的存在,无法访问符号 cont`x

删除冲突别名将恢复对被屏蔽的上下文的访问:

Wolfram Research (2021),$ContextAliases,Wolfram 语言函数,https://reference.wolfram.com/language/ref/$ContextAliases.html.

文本

Wolfram Research (2021),$ContextAliases,Wolfram 语言函数,https://reference.wolfram.com/language/ref/$ContextAliases.html.

CMS

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

APA

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

BibTeX

@misc{reference.wolfram_2024_$contextaliases, author="Wolfram Research", title="{$ContextAliases}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/$ContextAliases.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_$contextaliases, organization={Wolfram Research}, title={$ContextAliases}, year={2021}, url={https://reference.wolfram.com/language/ref/$ContextAliases.html}, note=[Accessed: 22-November-2024 ]}