Any algorithm to preserve whitespaces?

Michael Torrie torriem at gmail.com
Wed Jan 23 16:34:29 EST 2013


On 01/23/2013 07:56 AM, Santosh Kumar wrote:
> Yes, Peter got it right.
> 
> Now, how can I replace:
> 
>     script, givenfile = argv
> 
> with something better that takes argv[1] as input file as well as
> reads input from stdin.
> 
> By input from stdin, I mean that currently when I do `cat foo.txt |
> capitalizr` it throws a ValueError error:
> 
>     Traceback (most recent call last):
>       File "/home/santosh/bin/capitalizr", line 16, in <module>
>         script, givenfile = argv
>     ValueError: need more than 1 value to unpack
> 
> I want both input methods.

That's up to your program logic to do.  Check to see if the arguments
have been provided, and if not, open sys.stdin.  It's quite common for
command-line utilities to do this, but most of them use an explicit
parameter '-' to indicate that you want the command to use standard-in.
 Again, you can code this any way you want.  Personally I use one of the
standard library command-line argument parsing modules, like optparse,
but there are others that may be better.




More information about the Python-list mailing list