Mathematica:导出到可变路径

PFD*_*PFD 3 variables quotes loops wolfram-mathematica

这很棘手.一旦在Mathematica中导出数据的路径在引号下,我如何插入变量作为路径的一部分?换句话说,我在一个循环中,增加VAL并想要将MyData导出到VAL.dat.想法?

伪代码:导出["〜/ Documents/VAL",MyData]

Sjo*_*ies 13

除了Howard和Mr.Wizard的答案之外,我可以说找FileNameJoin一个很好的,独立于系统的方法来组成路径字符串并且IntegerString可以用来将整数转换为具有固定数量位置的字符串会很好.你的文件排序更好:

In[33]:= VAL = 32;
IntegerString[VAL, 10, 4]

Out[34]= "0032"
Run Code Online (Sandbox Code Playgroud)

我通常不太需要跨操作系统兼容性(主要是为我自己编程),所以我通常的风格会是这样的

Export["directoryPart\\FixedFileNamePart"<>IntegerString[VAL, 10, 4]<>".dat","TSV"]
Run Code Online (Sandbox Code Playgroud)

如果扩展名不清楚,请将"TSV"替换为您需要的文件类型.请注意我在Windows上,它使用反斜杠作为分隔符.由于这也是转义字符,因此必须使用反斜杠进行转义; 这解释了双反斜杠.你似乎是在UNIX派生上,所以没有必要.这确实显示其值FileNameJoin自动处理这些细节.

  • +1 - 我非常赞同使用`FileNameJoin`,`FileNameSplit`和朋友的建议.无论您是否为自己编程,编写可移植代码都是必不可少的,因为您永远不会知道其他人会在某些时候使用您的代码. (3认同)