请问如何设置在mma8中导入nb文件的同时,nb文件内容自动运行?
mathematica吧
全部回复
仅看楼主
level 1
我在linux里用mma8算东西,原来可以直接<<a.nb这样直接导入的同时也运行了。现在虚拟机里又装了mma8跑,但是我发现<<导入后是一串Notbook[。。。。]这样的,请问怎么回事?如何设置@xzcyr,抱歉打扰了,感觉大吧一直在线而且比较专业热心[Love]
2021年03月31日 08点03分 1
level 1
2021年03月31日 08点03分 2
level 1
原来<<Feyn.nb后,可以自动运行Feyn.nb里的几个.m文件和路径重设,现在不行了[乖]
2021年03月31日 08点03分 3
吧务
level 10
另存为m文件比较好。高版本可以NotebookImport[filename,"Input"|"Code"->"HeldExpression"],但是版本8有什么可以用我就不清楚了。不过至少可以Cases[Get@filename,Cell[boxdata_BoxData,"Input"|"Code",___]:>MakeExpression[boxdata,StandardForm]]
也许还有更好的办法
2021年03月31日 14点03分 4
另一台电脑原来是可以<<直接运行的,不知道现在怎么了。 谢谢,我先试试吧[OK]
2021年04月01日 01点04分
NotebookEvaluate,版本8已引入。
2021年04月03日 14点04分
@xzcyr 我就说记得有这么个函数来着。不过在没有frontend的情况下可能就用不了了
2021年04月03日 18点04分
@xzcyr NotebookEvaluate确实可以,谢谢大神,虽然没有自动补全函数,但比原来方便多了[Love]
2021年04月06日 06点04分
吧务
level 15
用windows下的版本8.0.4无法重现LZ所说的现象……不对,确切地说我找到了一个“重现”的方法,但这个方法是:先存一个.m文件,再把扩展名改成.nb。
2021年04月03日 03点04分 5
谢谢啦,应该必须写成m的程序包才能自动运行;以前那个我也不知道怎么回事能直接运行,那个肯定是没有写Package的
2021年04月03日 14点04分
@飞舞的羽翼 我建议你查查 init.m 之类的地方是不是有某些特殊设定。(重载Get函数也可能实现这个效果。)顺便说一句,用程序执行.nb文件的一般做法应该是NotebookEvaluate。
2021年04月03日 14点04分
@xzcyr 谢谢,我再试试[OK]
2021年04月05日 15点04分
1