Printing repeatedly on same line

Markus Wankus markus_wankus at hotmail.com
Sat Jan 25 17:28:27 CET 2003


Using sys.stdout.write() will work if you do not add your own '\n' to the 
end of it.

Otherwise, add a *comma* to th eprint statement, liek so:

print "Crap",

Markus.

On Sat, 25 Jan 2003 16:18:50 -0000, Andrew Wilkinson 
<ajw126NO at SPAMyork.ac.uk> wrote:

> Jason Morgan wrote:
>> How do I print (stdout) to the same line repeatedly? I want to offer a
>> status bar for a script. I have tried the following:
>>
>> def statprint(s):  # s is a string
>> import sys
>> sys.stdout.write(s+" "*(78-len(s))+"\r")
>>
>> I got this from this ASPN page:
>>
>> http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/146038
>>
>> which seemed to be refering to Windows (I'm writing for Linux/*BSD). I
>> have tried the above function, but it prints in the same manner as
>> 'print' does.
>>
>>
>> Thanks for the help in advance.
>>
>> Cheers,
>> Jason
>
> Try just adding a semicolon at the end of the print statement.
> For example
>
> print 1,
> print 2
>
> will give you
> 1 2
>
> HTH,
> Andrew Wilkinson




More information about the Python-list mailing list