0

在过去的两天里,我一直被这个问题困扰。我正在对两个不同的数据执行相同的操作集(涉及动态更新操作)。当每个单独完成时,我得到正确的输出,但是当两个操作都在同一个笔记本中时,第一个操作只是复制第二个操作。我读到这与全局变量有关,但作为初学者对我来说有点难以理解。

4

1 回答 1

2

在 Manipulate 内部访问和使用的所有变量都应该在 Manipulate 内部。不要使用全局变量。就这些。即不要写类似的东西

x=0
Manipulate[ x=y+1;
            x,
            {{y,0,"y="},0,10,1}
          ]

因为现在x是在全球范围内。但是写

Manipulate[ 
            Module[{x=0},
              x=y+1;
              x
            ],
            {{y,0,"y="},0,10,1}
          ]

只需要确保没有使用的变量是全局的。使用 Manipulate 中的模块来分解您的代码并使用参数在它们之间传递所有内容。

于 2012-11-28T05:11:50.673 回答