PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Thursday, September 15, 2022

[FIXED] How to fill carriage return printed string with whitespaces until end of line?

 September 15, 2022     for-loop, io, printing, python-3.6     No comments   

Issue

I'm trying to do something that should (and perhaps is) quite simple, but I can't find a solution. I'm guessing it may be because I am not able to query the internet properly for this matter.

I am running a code that has a counter that prints an updated % of completion in a line using the carriage return character (\r) to update the same line each time.

The code iterates over a series of nations, for example Canada, USA, Argentina to name three.

When it prints the counter, it also prints the nation. Like this:

k=0
for nation in d.keys():
  k += 1
  num_items = len(d[nation])
  ...
  <do something>
  ...
  sys.stderr.write(f"Processed {k} out of {num_items} for {nation}\r")

Now the issue comes out when Argentina is processed first, then Canada, then USA. The printed strings are:

Processed 147 out of 147 for Argentina
Processed 762 out of 762 for Canadaina
Processed 241 out of 241 for USAadaina

How do I avoid the previous line being featured in the new one while still using the carriage return?


Solution

You can print clean line consisting of spaces and then print your new line, for example:

import random
from time import sleep

countries = ["Argentina", "USA", "Canada"]

for _ in range(10):
    # clear the line
    print(" " * 60, end="\r")

    # print new line
    print(f"Processed XXX for {random.choice(countries)}", end="\r")
    sleep(0.5)

print()


Answered By - Andrej Kesely
Answer Checked By - Pedro (PHPFixing Volunteer)
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing