python 中 time.sleep 的奇怪打印行为[重复]

2023-11-30

我试图通过在同一行上每秒打印一个点来创建一个类似进度的东西。比如“钓鱼……”之类的。这是我用的:

import time

print('Fishing', end='')
for i in range(5):
    time.sleep(1)
    print('.', end='')

但它等待 5 秒并打印Fishing.....一次全部。但是当我不使用end='',它每秒打印点,但在单独的行上,如下所示

Fishing.
.
.
.
.

我的问题:

  1. 为什么print这样做吗?
  2. 如何每秒打印一个点,但在同一行上?

  1. 为什么print这样做吗?

这与以下关系不大print以及更多与您的终端有关的信息。出于性能原因,文本只会在每次出现换行符时“刷新”,而不是一次一个字符。

  1. 如何每秒打印一个点,但在同一行上?

每次打印内容时手动“刷新”标准输出:

import time
import sys

print('Fishing', end='')
sys.stdout.flush()
for i in range(5):
    time.sleep(1)
    print('.', end='', flush=True)  # another way

如果你一直需要这个,你可以定义一个单独的刷新打印函数:

from functools import partial
myprint = partial(print, end='', flush=True)
myprint('Fishing')
for i in range(5):
    time.sleep(1)
    myprint('.')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 中 time.sleep 的奇怪打印行为[重复] 的相关文章

随机推荐

  • 使用 asyncio 时,如何在关闭事件循环之前允许所有正在运行的任务完成

    我有以下代码 asyncio coroutine def do something periodically while True asyncio async my expensive operation yield from asynci
  • 如何在Python中打印三角形?

    我想做一个打印三角形的函数 如下图所示 用户可以插入三角形的行号 第一行的总长度必须是奇数 我尝试使用下面的代码 def triangle n k 2 n 2 for i in range 0 n for j in range 0 k pr
  • 如何在 datagridview 列中动态显示数字计时器(秒表)c#?

    我有datagridview 其数据源是datatable 我在 datagridview 有两列 及时命名 加载 datagridview 后 我想添加一个名为 DURATION 的新列 它是一个计时器列 即基于 IN TIME DURA
  • 如何使用 Pandas apply() 函数对 API 进行异步调用

    我有大约 14 000 行数据框 并尝试通过调用 API 将一些数据填充到新列中 下面的代码检索预期的响应 但是 似乎每次迭代都等待响应进入下一行 这是函数 def market sector des isin isin isin isin
  • Java解析字符串到日期[重复]

    这个问题在这里已经有答案了 我正在尝试在 Java 中解析字符串以获取日期对象 我的字符串是 String date 2013 04 13 21 00 00 代码是 String myFormatString yyyy mm dd hh m
  • “else”错误之前预期的主要表达式[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 我得到了expected primary expres
  • Javascript根据另一个下拉框值更改下拉框选项[重复]

    这个问题在这里已经有答案了 我正在练习 JavaScript 编程 我发现了一个问题 必须由一些专家来回答drop down boxes 场景是 我有一个drop down框提供了省份的一些可能选项以及第二个选项 城镇 该选项仅取决于省份中
  • 如何以层次结构显示非标准化数据?

    我的问题是我想以层次结构显示数据 如下所示 Democrat County Clerk 候选人1 候选人2 Magistrate 候选人1 候选人2 候选人3 但我正在检索这样的数据集 Party Office Candidate Demo
  • 当最终网址为 https 时,如何使用 python 取消缩短(解析)网址?

    当最终的 url 是 https 时 我希望在 python 中取消缩短 解析 一个 url 我看到过这样的问题 如何使用 python 取消缩短 URL 以及其他类似的 但是正如已接受答案的评论中所述 此解决方案仅在 url 未重定向到
  • 零填充矩阵

    我有一个 16X16 矩阵 我必须将它添加到 256X256 矩阵中 谁能帮助我如何将这个 16X16 矩阵变成 256X256 并用零填充剩余的矩阵 如果您将某些内容分配给超出原始大小的元素 Matlab 会自动用零填充 gt gt A
  • 根据下一行的格式删除换行符

    我有一个这种格式的特殊文件 title1 1 texthere title2 2 texthere 我希望将所有以 开头的换行符放置为之前行的第二列 我尝试使用 sed 和以下命令来做到这一点 sed s n g filename 但它没有
  • 使用 log4net 的 RichTextBoxAppender

    有没有办法使用 log4net 以编程方式创建 RichTextBox Appender 换句话说 没有 xml app config using System using System Windows Forms using System
  • 单击日历外部时,fullcalendar 触发事件单击

    我有一份活动日期清单 当我单击列表中的事件时 我想触发与单击日历相同的操作 我的事件点击函数 eventClick function calEvent jsEvent view openEvent calEvent 尝试这个 为您的事件分配
  • 在 Windows 中获取用户日期格式

    我的问题类似于this one 但是 我不想获取日期格式locale 而是由用户设置的 原因是我正在使用pywin32与 Outlook 通信的 api 特别是按日期过滤邮件 我必须将日期传递给应用程序的格式是用户设置的格式 否则它将无法工
  • MATLAB 类 getter 和 setter

    我有 Java 背景 我在 Matlab 中的类尤其是 getter 和 setter 方面遇到问题 收到一条消息说句柄和值类之间存在冲突我有点不知道该怎么做 所以任何缺乏更好的词的帮助都会有所帮助 classdef Person prop
  • MUI 自动完成 – 从 3 个字符开始过滤

    我有这样的 Autcomplete mui 组件 它可以对复选框列表进行过滤 带有选项的弹出窗口应始终保持打开状态 我需要做的是仅当用户输入超过 3 个字符时才触发过滤
  • 循环遍历maven中的特定资源文件生成源

    我使用 maven antrun plugin 从 thrift IDL 生成源代码 我有一个单独的项目 和 jar 来保存这些生成的源 并且这个插件不支持通配符替换 所以我不能说 thrift 我使用执行任务来生成源代码并将它们复制到 s
  • 使用 dplyr 填充缺失的序列值

    我有一个数据框 其中缺少 SNAP ID 值 我想根据之前的非缺失值 lag 的序列 用浮点值填充缺失值 如果可能的话 我真的很想仅使用 dplyr 来实现这一目标 假设 永远不会丢失数据 因为我根据数据集的最小和最大之间的缺失天数生成缺失
  • Android 模拟器复选框和单选按钮错误 - ui 上显示各种不正确的状态

    最近 我发现模拟器的显示单选按钮和复选框有奇怪的行为 它不是只有 2 种 UI 状态 更具体地说 它显示 4 种不同甚至更多 我想它们是冻结的动画状态 在布局检查器和新版本的 API 上 它看起来很正常 请看下面的图片 我在 Api 版本
  • python 中 time.sleep 的奇怪打印行为[重复]

    这个问题在这里已经有答案了 我试图通过在同一行上每秒打印一个点来创建一个类似进度的东西 比如 钓鱼 之类的 这是我用的 import time print Fishing end for i in range 5 time sleep 1