【问题标题】:Make a pinned print to the terminal with python?使用 python 在终端上进行固定打印?
【发布时间】:2020-09-05 04:54:06
【问题描述】:

如何打印到终端消息 固定在终端控制台的顶部还是底部?

谢谢!

【问题讨论】:

  • 在询问我们之前,请先自己解决这个问题。我们不是编码服务。
  • 相信我,我在问之前搜索过,因为找不到,所以我决定在这里问
  • 这很好,但它根本没有显示在问题中,所以我们怎么知道?我们可能会推荐您已经尝试过的解决方案,因此请尽可能包含您尝试过的方法并向我们展示您的努力,以便我们更好地了解问题。

标签: python linux ssh terminal


【解决方案1】:

您可以使用curses module 制作固定消息我在一个已经提出的问题here 中找到了此解决方案我相信您可以在window.addstr 函数中添加您的字符串

import time
import curses

def pbar(window):
    height, width = window.getmaxyx()
    for i in range(10):
        window.addstr(height -1, 0, "[" + ("=" * i) + ">" + (" " * (10 - i )) + "]")
        window.refresh()
        time.sleep(0.5)

curses.wrapper(pbar)

【讨论】:

    【解决方案2】:

    您可以借助 os 模块获取运行代码的终端大小:

    import os
    
    def ptb(top_text, bottom_text):
        ts = os.get_terminal_size()
        n = ts.lines()
        os.system('clear') # Linux terminal only
        print(top_text + '\n'*(n-2) + bottom_text)
    

    【讨论】:

      猜你喜欢
      • 2011-01-08
      • 2018-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多