level 1
RT.
我想先生成X_i,再给每个赋值,请问如何高效的实现?
谢谢。
2014年09月22日 13点09分
1
level 7
{x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9]} = {1, 2, 3, 4,
5, 6, 7, 8, 9}
2014年09月23日 00点09分
2
谢谢。但如果对很多变量赋值,可能就不方便了。
2014年09月24日 08点09分
level 11
实现方法有好多种,这里给出两种(3个)
一、
Remove["Global`*"]
v = Table[ToExpression["x" <> ToString[k]], {k, 10}]
Evaluate[v] = Range[10]
x2
二、
Remove["Global`*"]
v = Table[
ToExpression["x" <> ToString[k] <> "=" <> ToString[k]], {k, 10}]
x2
三、
Remove["Global`*"]
v = Table[Subscript[x, k], {k, 10}]
Evaluate[v] = Range[10]
Subscript[x, 2]
2014年09月24日 03点09分
3
level 1
@凡星有梦,谢谢。
如果不想Remove["Global`*"],
再次赋值(或者运行两次)会出现错误。
Set::setraw: Cannot assign to raw object 1
请问如何解决。
2014年09月24日 08点09分
4
应该是由于变量名已经被使用,再次使用脚标就会出错了。如是不清除变量的话,可以换一个变量名。或使用第二种方式,就不会出错是了。
2014年09月28日 01点09分
level 9
mathematica 10已经有了association的数据结构,比downvalue类型要快。LZ可以试试。
2014年09月28日 00点09分
6