Wie bekomme ich voneinander abhängige Optionen?

8

Ich möchte etwas wie

machen %Vor%

und habe Mathematica gib mir 1 statt 0 . Gibt es dafür einen besseren Weg als

? %Vor%

?

Zum einen ist es ineffizient, die Optionen von foo bei jedem Aufruf festzulegen, insbesondere wenn foo viele Optionen hat.

    
Jason Gross 28.10.2011, 01:17
quelle

2 Antworten

8

Deshalb haben wir Automatic . Ich würde etwas wie:

verwenden %Vor%

Plus dies ermöglicht eine kompliziertere Interpretation der automatischen Werte, wenn Sie es brauchen.

    
Brett Champion 28.10.2011 03:56
quelle
4

Sie haben geschrieben:

  

Ich möchte etwas wie

machen %Vor%      

und habe Mathematica, gib mir 1 statt 0 .

Ich bekomme OptionValue[a] als Rückgabe dafür, nicht 1 OR 0 . Dies liegt daran, dass OptionValue mit OptionsPattern[] übereinstimmen muss und nicht. Überlegen Sie:

%Vor% %Vor%

Hier ist eine mögliche Methode, um Ihr Ziel zu erreichen. Ich benenne die OptionsPattern[] , so dass ich mit diesen Regeln außerhalb von OptionValue arbeiten kann. Beachten Sie, dass ich immer noch einen expliziten Wert für b angeben kann.

%Vor% %Vor% %Vor%     
Mr.Wizard 28.10.2011 05:00
quelle