Javascript must be enabled in your browser to use this page.
Please enable Javascript under your Tools menu in your browser.
Once javascript is enabled Click here to go back to �нтеллектуальная Кобринщина

Clear My Definitions - Wolfram Mathematica

Сброс определений пользователя

Присвоенное Вами значение символу будет использоваться на протяжении всей сессии Mathematica. Это может стать причиной неожиданной ошибки при использовании данного символа в новых вычислениях. Поэтому своевременный сброс Ваших определений является очень целесообразным.

Присвоение значений двум символам (x и y) и нахождение их суммы:

In[1]:=

ClearMyDefinitionsRU_1.gif

Out[3]=

ClearMyDefinitionsRU_2.gif

Используйте Clear для сброса определений, присвоенных для x и y:

In[4]:=

ClearMyDefinitionsRU_3.gif

Убедитесь, что x и y не имеют более присвоенных им раньше значений и обрабатываются как символы, которые не имеют определений:

In[5]:=

ClearMyDefinitionsRU_4.gif

Out[5]=

ClearMyDefinitionsRU_5.gif

Эта команда сбрасывает все определения, сделанные во время текущей сессии Mathematica:

In[6]:=

ClearMyDefinitionsRU_6.gif

    

Используйте ClearAll для сброса не только значений и определений символов, но также атрибутов и сообщений, ассоциированных с ними.

Начнем с функции которая выводит результат в диапазоне от 0 до некоторого положительного целого числа:

In[7]:=

ClearMyDefinitionsRU_7.gif

Заметьте, что f выдает ошибку если в качестве аргумента задается список:

In[8]:=

ClearMyDefinitionsRU_8.gif


Out[8]=

ClearMyDefinitionsRU_10.gif

Теперь назначим для f атрибут Listable, чтобы f обрабатывала список, если список задан в качестве аргумента:

In[9]:=

ClearMyDefinitionsRU_11.gif

Out[10]=

ClearMyDefinitionsRU_12.gif

Обратите внимание, что после сброса определений для f, атрибут Listable остается в силе:

In[11]:=

ClearMyDefinitionsRU_13.gif

Global`f

Attributes[f]={Listable}

Используйте ClearAll для сброса атрибутов, а также сообщений:

In[13]:=

ClearMyDefinitionsRU_14.gif

Global`f

    

Используйте ClearAttributes для сброса только атрибутов функции и сохранения ее определений.

Вновь определим f и зададим для нее атрибут Listable как и ранее:

In[15]:=

ClearMyDefinitionsRU_15.gif

Global`f

Attributes[f]={Listable}
f[x_]:=Table[i,{i,0,x}]

Теперь применим ClearAttributes и обратим внимание, что определение для f сохраняется, в то время как атрибут Listable больше не п&# 1088;исутствует:

In[18]:=

ClearMyDefinitionsRU_16.gif

Global`f

f[x_]:=Table[i,{i,0,x}]

    

Вы, также, можете использовать Unset (=.) для сброса любых значений или определений присвоенных символу:

In[20]:=

ClearMyDefinitionsRU_17.gif

Out[20]=

ClearMyDefinitionsRU_18.gif

In[21]:=

ClearMyDefinitionsRU_19.gif

Global`x

    

Команда Remove полностью удалит символ, до тех пор пока он не будет упомянут заново:

In[23]:=

ClearMyDefinitionsRU_20.gif


Обращение к x вернет его обратно в сессию Mathematica:

In[25]:=

ClearMyDefinitionsRU_22.gif

Out[25]=

ClearMyDefinitionsRU_23.gif

Global`x

Для определенных локально символов, которые сохраняют набор значений только для указанной части программы, определения автоматически сбрасываются после использова&# 1085;ия. Локальное определение символов задается при помощи команд Block или Module.