如何將變數值儲存到新腳本你好,
我正在嘗試將元資料保存到表中,因此下次打開文件時,我將能夠使用構建表時使用的一些變數。
據我所知,目前只有字串可以作為元資料保存到表中。
我嘗試的其他選項是將新腳本儲存到表中,其中將包含我需要的變數。
問題是我不明白如何使用“保存腳本”來添加變數值而不是變數名稱。
例如我嘗試過這個:
x = expr (a = [1,2,3]);
dt << New script ("test",char (x));這會產生帶有 - char(x) 的腳本。
我嘗試了我能想到的任何 expr/eval/parse 組合,但沒有一個有幫助。
我只希望新腳本“測試”包括:
a = [1,2,3]
但是當我編寫腳本時,我當然不知道 a 的實際值。
先致謝
分享和交流成果回覆:如何將變數值儲存到新腳本中我喜歡使用 evalinsert 和 eval(parse())。
dt = New Table( "Untitled 8",
Add Rows( 2 ),
New Column( "Column 1", Character, "Nominal", Set Values( {"a", "b"} ) )
);
a1 = "a = [1, 2, 3]";
b1 = evalinsert("\[dt << new script("test", ^a1^)]\");
eval(parse(b1));回覆:如何將變數值儲存到新腳本中略有不同,不一定更好:
NamesDefaultToHere(1);
dt = NewTable("Test");
myScript =
Expr(
a = {1, 2, 3, 4};
Speak(a);
);
addScript =
Expr(
dt << NewScript(nTBD, sTBD)
);
SubstituteInto(
addScript,
Expr(nTBD), "My Script",
Expr(sTBD), EvalExpr(myScript)
);
addScript;
回覆:如何將變數值儲存到新腳本中感謝您的協助。
我錯過了使用「eval (eval expr(".."))」的選項
我最終使用的方式是這樣的——
a = {1,2,3};
Eval(Eval Expr(dt << New script ("test",
a = expr (a);
)));這樣,新的測試腳本現在包含“a = {1,2,3};”,這就是我想要的。
再次感謝。
回覆:如何將變數值儲存到新腳本中你好,
這符合您的要求嗎?:
x = expr ("a = [1,2,3]");
eval(eval expr(dt << New script ("test",char (expr(parse(x))))));