首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在curses中打印到shell Python

在curses中打印到shell Python
EN

Stack Overflow用户
提问于 2013-09-29 13:39:36
回答 1查看 547关注 0票数 1

我发现了一个标题为"Print to standard console in curses“的问题。这里描述了一个使用对象的解决方案,该对象在关闭curse屏幕后替换sys.stdout打印到标准控制台。我测试了这个解决方案,并且工作正常,但是我想知道如何将内容打印到python shell?编程代码如下所示

代码语言:javascript
复制
class stdoutwrapper:
  text=""
  def write(self,txt):
    self.text +=txt
    self.text='\n'.join(self.text.split('\n')[-30:])
  def get_text(self,beg,end):
    return '\n'.join(self.text.split('\n')[beg:end])
if __name__=="__main__":
  mystdout=stdoutwrapper()
  sys.stdout=mystdout
  sys.stderr=mystdout
  print "bienvenido"
...........
..........
..........
...........
# Main program
  processmenu(menu_data)
  curses.endwin() #VITAL! This closes out the menu system and returns you to the bash prompt.
  os.system('clear')
  sys.stdout=sys.__stdout__
  sys.stderr=sys.__stderr__
  sys.stdout.write(mystdout.get_text(0,30))

从curse界面退出后,进入标准控制台的输出为:

比恩维尼多

c:\users\casalino>

EN

回答 1

Stack Overflow用户

发布于 2014-08-01 08:13:22

我不确定我是否完全理解你的问题。如果你想在curses程序中打印文本-你应该使用类似这样的东西:

代码语言:javascript
复制
screen = curses.initscr()
screen.noecho()

screen.addstr(y=5, x=5, "My_string")
self.screen.refresh()

例如,here是我的诅咒虚拟“屏幕保护程序”。

Python诅咒tutorial

如果你想打印一些调试值,那么最好使用记录器模块和日志文件。

祝好运!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19074817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档