【发布时间】:2021-10-15 07:59:32
【问题描述】:
第 1 部分
如果我们有这个
[> restart; a[5]:=23: a[7]:=41:
然后
[> about(a); whattype(a);
a:
nothing known about this object
symbol
但是
[> print(a);
table([5 = 23, 7 = 41])
和
[> convert(a,list);
[23, 41]
所以 Maple 确实有足够的关于变量 a 及其索引的信息。我们如何在不打印的情况下检查这些信息?
对于小型索引这不是问题,但是如果 b[123457891234578912345789]:=789; 那么我们如何检查是否有某个索引 i 为 b[i] 定义了值以及该索引 i 是什么(不打印,即不是手动)?
第 2 部分
我希望能够在函数中使用此类变量并返回此类变量。 例如,假设我想将所有索引增加 1。如果我知道存在哪些索引,那么我可以这样做
[> a[5]:=23: a[7]:=41:
f:=proc(x) local y;
y[6]:=x[5]; y[8]:=x[7]; y;
end proc:
b:=f(a); b[6]; b[8];
b:=y
23
41
但我通常不知道 a 有什么索引变量。
【问题讨论】: