String Python覆盖第n个字符的打印输出

String Python覆盖第n个字符的打印输出,string,python-2.7,String,Python 2.7,我想知道是否有办法覆盖从第n个字符开始的现有打印输出行。因此,与其像这样覆盖所有内容 sys.stdout.write("\r 5: elephant") sys.stdout.flush() 您将替换位于以下位置的现有行:1。每次重印这行的第一部分。2.返回到该点,而不是使用\r返回到行首。3.使用curses库可以在屏幕上任意位置放置字符。有没有简单的方法可以访问当前打印的输出?这是一个问题的原因是,这出现在单独的函数之间,每个函数嵌套在其他函数中…一旦刷新,sys.stdout从技术上讲

我想知道是否有办法覆盖从第n个字符开始的现有打印输出行。因此,与其像这样覆盖所有内容

sys.stdout.write("\r 5: elephant")
sys.stdout.flush()

您将替换位于以下位置的现有行:

1。每次重印这行的第一部分。2.返回到该点,而不是使用
\r
返回到行首。3.使用
curses
库可以在屏幕上任意位置放置字符。有没有简单的方法可以访问当前打印的输出?这是一个问题的原因是,这出现在单独的函数之间,每个函数嵌套在其他函数中…一旦刷新,
sys.stdout
从技术上讲是一个只写流,因此您没有机会看到当前位置前面已经打印到控制台的内容,因此您不能真正“跳过”到它来随意更改它。在打印更改之前,您需要记录打印的字符数,然后回溯该字符数,或者需要缓冲整行,发出回车符,然后打印第一个字符。您可以使用标准字符回退吗?我试过了\b但似乎不起作用?