I'm using Python with -c
to execute a one-liner loop, i.e.:
$ python -c "for r in range(10): print 'rob'"
This works fine. However, if I import a module before the for loop, I get a syntax error:
$ python -c "import sys; for r in range(10): print 'rob'"
File "<string>", line 1
import sys; for r in range(10): print 'rob'
^
SyntaxError: invalid syntax
Any idea how this can be fixed?
It's important to me to have this as a one-liner so that I can include it in a Makefile.
you could do
echo -e "import sys\nfor r in range(10): print 'rob'" | python
or w/out pipes:
python -c "exec(\"import sys\nfor r in range(10): print 'rob'\")"
or
(echo "import sys" ; echo "for r in range(10): print 'rob'") | python