假设我有以下结果:
a=FindInstance[2*b^2 + b^3 == b^4 + t && t < 10 && t > -1, {b, t},
Integers, 20]
{{b -> -1, t -> 0}, {b -> 0, t -> 0}, {b -> 1, t -> 2}, {b -> 2,
t -> 0}}
如何摆脱“b-&gt;”并获得b答案的数组?我可以在那里半途而废:
a[[All,1]]
{b -> -1, b -> 0, b -> 1, b -> 2}
但我怎么才能做到:
{-1, 0, 1, 2}
由于
答案 0 :(得分:12)
我可能会错过dreeves的答案,但我一直认为你这样做的方式只是写作:
b /. a
在the documentation for the Solve
function的“基本示例”部分中有一个示例,它使用相同的输出样式。
答案 1 :(得分:3)
虽然威尔的回答是规范的做法,但我会提供一些选择,只是为了好玩。
In[37]:= ans={{b -> -1, t -> 0},{b -> 0, t -> 0},{b -> 1, t -> 2},{b -> 2, t -> 0}};
In[38]:= Cases[ans, (b -> a_) :> a, Infinity]
Out[38]= {-1, 0, 1, 2}
In[39]:= ans[[All, 1]][[All, 2]]
Out[39]= {-1, 0, 1, 2}
In[40]:= ans /. {b -> a_, _} :> a
Out[40]= {-1, 0, 1, 2}
In[41]:= (ans /. Rule -> List)[[All, 1, 2]]
Out[41]= {-1, 0, 1, 2}