11
$\begingroup$

I'm just starting out with Mathematica and I'm using MathematicaScript rather than the GUI. However, I'm having trouble formatting a list when printing it.

Suppose I have a list and I want to print it using Column:

list = {a, b, c};
Print[Column[list]];

Calling this outputs Column[{a, b, c}] rather than

a
b
c

I suspect that this is because I'm running Mathematica in script mode. Is there anything I can do to display a list like this? How can I verify what the cause of my problem is from the documentation (I'm having trouble running the GUI)? The documentation doesn't say anything about Column only working in GUI mode.

I assume that the answer to getting a list (if there is one) to display as a column will explain how to do the same for a grid with 2D lists.

$\endgroup$
1
  • 2
    $\begingroup$ On second thoughts, I'd rather it not be closed as a duplicate. Pls ignore the vtc. $\endgroup$ – rm -rf Sep 2 '12 at 14:57
10
$\begingroup$

You can force the Column to display correctly in text-only script mode by passing it explicitly to OutputForm. For example:

#!/Applications/Mathematica.app/Contents/MacOS/MathematicaScript -script
list = {a, b, c};
Print[Column[list] // OutputForm];

gives the output you expect:

a
b
c
$\endgroup$
2
  • 5
    $\begingroup$ Or, as mentioned here, execute SetOptions[$Output, FormatType -> OutputForm]; before anything else... $\endgroup$ – J. M.'s ennui Sep 2 '12 at 14:24
  • $\begingroup$ Yes, OutputForm is exactly what I was looking for. Thanks to both of you! (I wish I could think of looking for something like OutputForm on my own...) $\endgroup$ – Brandon Amos Sep 2 '12 at 14:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.