【问题标题】:How to print in one line in Python? [closed]如何在 Python 中打印一行? [关闭]
【发布时间】:2020-01-08 13:05:05
【问题描述】:
import os
import time

loading = ["L", "O", "A", "D", "I", "N", "G"]
for i in range(3):
    os.system("cls")
    for a in  range(0,7):
        time.sleep(0.5)
        print(loading[a])

---> 在程序加载中,我希望它在一行中 我尝试使用print(loading[a], end="") 但它只是不工作。

【问题讨论】:

  • “不工作”是什么意思?
  • 预期和实际输出是多少?

标签: python printing


【解决方案1】:

我认为你想做这样的事情:

import time

text = 'LOADING'
for n in range(3):
    print(f"\r{' '*len(text)}", end='')
    for i in  range(len(text)):
        message = text[:i+1]
        print(f"\r{message}", end='')
        time.sleep(0.5)

诀窍是在要打印的字符串前面添加“\r”。

【讨论】:

  • end='' 就足够了(假设输出已刷新);这里不需要在每次迭代时从行首重写整个字符串。
  • @chepner 我没有收到你的评论。你会怎么做?
猜你喜欢
  • 2012-01-21
  • 2020-01-04
  • 2018-08-04
  • 1970-01-01
  • 1970-01-01
  • 2016-01-10
  • 2019-11-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多