Re: [問題] 自動載入及自動存檔

看板Mathematica作者 (養花種魚數月亮賞星星)時間13年前 (2011/10/19 13:34), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
※ 引述《oversky0 (oversky0)》之銘言: : → chungyuandye:Quit[] 10/18 18:01 : → oversky0:我試的結果 Quit[]也會把函數清掉。 10/19 10:26 : → oversky0:Remove, Clear, ClearAll, Quit 這幾個有何差別? 10/19 10:42 Attributes[xPrint]={HoldAll,Listable}; xPrint[x_]:=(Print[HoldForm[x]," =",Tab,x]); 先試試把之前的xPrint的定義放在init.m,檔案在以下的目錄 ToFileName[$UserBaseDirectory, "Kernel"] 以下是我執行的結果 (* 打開新檔後自動載入 init.m *) In[1]:= ?xPrint Global`xPrint Attributes[xPrint]={HoldAll,Listable} xPrint[x_]:=Print[HoldForm[x], =,Tab,x] In[2]:= a = 3; xPrint[a] In[2]:= a = 3 (* 執行Quit[],這個指令會結束Mathematica 的Kernel,所以再次執行?xPrint時, 因為Kernel會重新載入,所以你會發現In的地方又變成1*) In[3]:= Quit[] In[1]:= ?xPrint Global`xPrint Attributes[xPrint]={HoldAll,Listable} xPrint[x_]:=Print[HoldForm[x], =,Tab,x] In[2]:= a Out[2]= a In[3]:= a = 3; xPrint[a] In[3]:= a = 3 (* 把 a跟 xPrint Clear掉,Clear只會清除 符號的值與定義,但是屬性,名稱會留下 *) In[4]:= Clear[a, xPrint] In[5]:= a Out[5]= a In[6]:= ?xPrint Global`xPrint Attributes[xPrint]={HoldAll,Listable} (*ClearAll雖然刪除屬性,但是名稱還是留著 *) In[7]:= ClearAll[a, xPrint] In[8]:= ?xPrint Global`xPrint (* 重新載入init.m *) In[9]:= << init.m In[10]:= ?xPrint Global`xPrint Attributes[xPrint]={HoldAll,Listable} xPrint[x_]:=Print[HoldForm[x], =,Tab,x] (* Remove,連根拔起,刪光光 *) In[11]:= Remove[xPrint] In[12]:= a Out[12]= a In[13]:= ?xPrint In[13]:= Information::notfound: Symbol xPrint not found. >> -- 養花種魚數月亮賞星星 http://chungyuandye.twbbs.org -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.173.129.131

10/19 14:02, , 1F
感謝詳細解說。
10/19 14:02, 1F
文章代碼(AID): #1Edc62UA (Mathematica)
文章代碼(AID): #1Edc62UA (Mathematica)