【发布时间】:2020-05-21 04:12:47
【问题描述】:
我有一个mathematica 程序,它的输出是一个文本文件,出于某种原因将在python 中用作输入。
savedXText = ExportString[savedX, "Text"];
savedXText2 =
StringReplace[
savedXText, {"[" -> "(", "]" -> ")",
"t" -> "m.lammda[i]*180/np.pi", "u" -> "m.phi[i]*180/np.pi"}];
Export["testOutputX.txt", savedXText2];
testOutputX.txt 有许多可以变化的行。我需要写而不是只写m.lammda 和m.phi 行数。如果文件有三行,我需要m.lammda1和m.phi1、m.lammda2和m.phi2和m.lammda3和m.phi3在testOutputX.txt的每一行中
我的想法是使用 for 循环,对savedX 的每一行进行充电,然后进行字符串替换,其中用于计数循环的变量的值以文本形式写入StringReplace。
我已经构建了一个 for 循环,它选择 savedX 的每一行并执行 StringReplace
savedXReplaced = Table[RandomInteger[i, lengthLoop], {i, 1, lengthLoop}];
For[i = 1, i < lengthLoop + 1, i++,
savedXTextTemp = ExportString[savedX[[i]], "Text"];
savedXTextTemp2 =
StringReplace[
savedXTextTemp, {"[" -> "(", "]" -> ")",
"t" -> "m.lammda[i]*180/np.pi", "u" -> "m.phi[i]*180/np.pi"}];
Print[savedXTextTemp2]; savedXReplaced[[i]] = savedXTextTemp2]
然而,我查看了StringReplace 的documentation,但我无法找到如何编写i 的值,这个for 循环中使用的变量。
有没有办法做到这一点?
【问题讨论】:
标签: string for-loop text replace wolfram-mathematica