Can't get sys.stdin.readlines() to work

tinnews at isbd.co.uk wrote:
> I'm trying to read some data from standard input, what I'm actually
> trying to do is process some date pasted in using the mouse cut and
> paste on a Linux box (xubuntu 9.10) in a terminal window.
>> First attempts failed so I'm now trying the trivial:-
>> import sys
> data = sys.stdin.readlines()
> print "Counted", len(data), "lines."
>>> When I run this and try to paste something into the terminal window I
> get the following errors:-
>> /home/chris/bin/m2r.py: line 2: syntax error near unexpected token `('
> /home/chris/bin/m2r.py: line 2: `data = sys.stdin.readlines()'
>>> It does exactly the same if I try:-
>> cat | m2r.py
>> and then paste something into the window.
>>> So - what on earth am I doing wrong?
>>Trying to run Python scripts with /bin/sh, probably.
First of all, does you PATH include the current directory (.)? It looks
like it does, because your computer seems to be trying to execute the
m2r.py script. However, because that script does not start with a
"shebang" line - the one you need is probably either
#!/usr/bin/python
or
#!/usr/bin/env python
the shell is trying to run the script using the wrong interpreter.
regards
Steve
--
Steve Holden +1 571 484 6266 +1 800 494 3119
PyCon is coming! Atlanta, Feb 2010 http://us.pycon.org/
Holden Web LLC http://www.holdenweb.com/
UPCOMING EVENTS: http://holdenweb.eventbrite.com/