在循环内打印两行而不返回

时间:2018-05-22 01:11:54

标签: python python-3.x

此问题不重复,linkedquestion无法解决问题,我尝试在同一位置打印两条行(每个打印在一个在循环内没有新行的行),链接的问题显示如何在同一位置打印一行......

可以使用python:

在循环内的相同位置轻松打印一行
from time import sleep

for i in range(50):

  sleep(0.1)
  print("hi"+str(i) , end="\r")

但是如何在循环中使用两条线来做呢?

我试过了:

from time import sleep

for i in range(50):

  sleep(0.1)
  print("hi"+str(i) , end="\r")
  print("hi2"+str(i) , end="\r")

不起作用: - (

我尝试(没有第一个\r):

  print("hi"+str(i) , end="")
  print("hi2"+str(i) , end="\r")

不起作用,这打印hihi2在同一行......

有一些方法可以打印hi和hi2(每个连续)保持位置线?

预期结果为::

hi<increment from 0 to 50 without new line jump inside the loop>
hi2<increment from 0 to 50 without new line jump inside the loop>

1 个答案:

答案 0 :(得分:0)

for i in range(50):
    sleep(0.1)
    print("hi"+str(i))
    print('hi2'+str(i), end='\r')

    if i<49:   
        print('\033[2F') # \033[2F,escape character to move cursor to the two lines up

希望它可以帮到你