How to write a simple shell loop in python?

Dietrich Bollmann diresu at web.de
Tue Jan 20 22:52:46 EST 2009


Hi,

I am trying to write a simple shell loop in Python.

My simple approach works fine - but the first output line after entering
something is always indented by one blank.  

Is there any logic explanation for this?  
How can I get rid of the blank?
Is there a smarter way to write a simple shell loop which would work
better?

Thanks, Dietrich


Here my approach:

$ python
Python 2.5.2 (r252:60911, Jan  4 2009, 17:40:26) 
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys    
>>> while (1):
...     print "$ ",
...     input = sys.stdin.readline()
...     input = input.strip()
...     print input
...     print input
...     print input
... 
$ one
 one
one
one
$ two
 two
two
two
$ three
 three
three
three
$ 
Traceback (most recent call last):
  File "<stdin>", line 3, in <module>
KeyboardInterrupt
>>> 





More information about the Python-list mailing list