Ask
Ask["key"]
是用于 AskFunction 内部的一个结构,它给出与 key 关联的值,如果值未知的话则交互式地询问值.
Ask["key"formspec]
使用 formspec 定义输入如何被请求和解释.
Ask[{"key1","key2",…}]
给出与所有 keyi 关联的值,必要时则交互式地询问.
Ask[{"key1"->formspec1,"key2"->formspec2,…}]
使用 formspeci 定义 keyi 的输入如何被请求和解释.
更多信息
- 当 Ask["key"] 第一次出现在 AskFunction[{…,"key"->spec,…},body] 的运算中时,与 "key" 关联的值将交互式地被请求,使用由 spec 指定的表单和解释. Ask["key"] 后面的运算返回存储的值.
- 如果 Ask["key"] 是在 AskFunction 内部被运算的,并没有给出如何请求 "key" 的规范,则认为它等价于 Ask["key"->"String"].
- 使用 Ask["key"] 得到的 "key" 值可以通过对随后的 AskAppend[…] 结构运算更改,并可以通过 AskConfirm[…] 删除.
- 如果关于如何请求键值的规范在 AskFunction 中给出,它将覆写所包含的 Ask 结构中给出的任何规范. 如果在AskFunction 中没有给出规范,则使用第一个 Ask 中将要运算的规范.
- Ask["key"]=value 或 Ask["key"]:=value 可用于设定与 AskFunction 内部的键关联的值,如果该值尚未设定的话t.
- Ask["key"]=. 取消所设定的与 AskFunction 内部的键关联的值,并且有效地将 AskFunction 内部的运算返回到"key" 值被请求时的点.
范例
打开所有单元关闭所有单元推广和延伸 (6)
属性和关系 (4)
在 AskAppend 之前使用 Ask 将导致第一个答案在被追加至结果前封装在列表中:
在 AskAppend 之后使用 Ask 将导致当前已知的值列表被返回,而不出现表单:
AskConfirm 可以用来将运算回退到值已知之前的点. 被 AskAppend 的否定结果删除的 Ask 值将被再次询问:
AskConfirm 可以通过取消设置与键相关联的值来模拟:
文本
Wolfram Research (2016),Ask,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Ask.html (更新于 2017 年).
CMS
Wolfram 语言. 2016. "Ask." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2017. https://reference.wolfram.com/language/ref/Ask.html.
APA
Wolfram 语言. (2016). Ask. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/Ask.html 年