On 17/06/11 19:47:50, Timo Lindemann wrote:
On Fri, 17 Jun 2011 00:57:25 +0000, Jason Friedman said:
but for various reasons I want a single script. Any alternatives?
you can use a here document like this:
#! /bin/bash
/usr/bin/python2<< EOPYTHON
def hello():
print("Hello, World");
if __name__ == "__main__":
hello();
EOPYTHON
That does not solve the problem as stated. The OP wants to call python
inside a loop and he wants to indent things properly:
#!/bin/bash
for i in 1 2 3 4 5
do
python << EOPYTHON
def hello():
print("Hello, World");
if __name__ == "__main__":
hello();
EOPYTHON
done
That doesn't work, because the EOPYTHON token is indented.
If you put the EOPYTHON token flush left, it still doesn't work, because
Python does not accept indentation on line 1:
File "<stdin>", line 1
def hello():
^
IndentationError: unexpected indent
For some ideas that may work, read the earlier posts in this thread.
-- HansM
--
http://mail.python.org/mailman/listinfo/python-list