当前位置: 首页 > 面试题库 >

打印到同一行而不是python中的新行

锺离声
2023-03-14
问题内容

我有一个程序,告诉我它有多远。

for i in some_list:
    #do a bunch of stuff.
    print i/len(some_list)*100," percent complete"

因此,如果len(some_list)为50,我将最后一行打印50遍。我想打印一行并继续更新该行。我知道我知道这可能是您整天都会阅读的最棘手的问题。我只是想不通我需要输入到Google以获得答案的四个词。

更新!我尝试了mvds的建议,认为正确。新密码

print percent_complete,"           \r",

完成百分比只是一个字符串(我是第一次尝试抽象,现在是抽象的)。现在的结果是,它运行该程序,直到程序结束后才打印任何内容,然后仅在一行上打印“
100%完成”。

没有回车符(但逗号,是mvds建议的一半),直到最后都不会打印任何内容。然后打印:

0 percent complete     2 percent complete     3 percent complete     4 percent complete

等等。因此,现在的新问题是,直到程序完成,逗号才会打印出来。

使用回车符且没有逗号时,其行为与未使用逗号完全相同。


问题答案:

这叫做回车,或者 \r

采用

print i/len(some_list)*100," percent complete         \r",

逗号防止打印添加换行符。(空格将使行与先前的输出保持清晰)

另外,别忘了以a终止print ""以获取至少一个最终换行符!



 类似资料:
  • 问题内容: 我想像这样打印进度条: 但是这些都应该打印到终端机的同一行,而不是新行。我的意思是,每个新行都应替换上一行,而不是使用而不是。 如何用Java做到这一点? 问题答案: 格式化字符串,如下所示: 注意字符。正是所谓的回车,会将光标移回行的开头。 最后,请确保你使用 并不是

  • 问题内容: 我有一个称为Items的基类和3个派生类,在Items基类中,我具有以下形式的打印功能 在每个派生类中,我都调用Items打印功能,然后通过它调用与派生类相关的特定打印功能。 我的问题是,每当从派生类之一执行打印时,打印的文本就不在同一行上。因此将在派生类打印功能上方的行中。如何使他们都在同一条线上? 问题答案: 不要在基类上使用代替

  • 问题内容: 我想将循环的输出打印到同一行的屏幕上。 如何以最简单的方式针对Python 3.x进行操作 我知道在Python 2.7的末尾使用逗号来问这个问题,即print I,但是我找不到Python 3.x的解决方案。 屏幕输出。 我要打印的是: 新读者也可以访问此链接http://docs.python.org/release/3.0.1/whatsnew/3.0.html 问题答案: 来自

  • 问题内容: 我想打印文件的内容,但是所有以#开头的行都想忽略。我正在尝试使用grep和awk进行操作,但是它一直在打印整个文件,或者只是打印以#开头的行。我可以以正确的方式推动我,也可以使用grep / awk命令在不以#开头的文件中打印任意行。 问题答案: 使用选项可以否定条件:

  • 问题内容: 我想运行一个脚本,该脚本基本上显示如下输出: 目前,我先打印,然后再打印。 不过,我现在想打印并在同一行。 有任何想法吗? 问题答案: 你可以使用该语句执行此操作,而无需导入。 该print行末尾的逗号阻止print发布新行(你应注意,输出末尾会有多余的空间)。 Python 3解决方案 由于以上内容在Python 3中不起作用,因此你可以改为这样做(同样,不导入): 打印功能接受默认