python - 如何在前一个字符串后面打印字符
问题描述
所以简单地说,我想知道如何做到这一点:
import sys
sys.stdout.write("Hello World")
=> Hello World
#print something to go left maybe?
sys.stdout.write("Im Back Here!")
=> Im Back Here!Hello World
我希望我已经解释得足够清楚了!任何帮助将不胜感激。谢谢!
解决方案
您可以使用以下方法更改光标位置:
sys.stdout.seek(offset[, whence])
你可以在这里找到它的描述: Python 3 library
但是使用 write 方法会覆盖 stdout,因此您需要以某种方式记住输出。
解决方案示例:
import sys
out = ""
def append(s):
global out
sys.stdout.seek(0, 2)
sys.stdout.write(s)
out += s
def append_left(s):
global out
sys.stdout.seek(0,0)
sys.stdout.write(s + out)
out = s + out
append("Hello World")
append_left("Im Back Here!")
但是,当您不将输出重定向到文件时,stdout 是不可搜索的。你可以在 那里找到原因。
推荐阅读
- reporting-services - SSRS 导出到 xls 没有详细信息
- mxgraph - 如何在 mxGraph 中以编程方式添加自定义属性?
- php - 如何使用 CodeIgniter 以 JSON 格式保存数据?
- hyperledger-fabric - 安装不同版本的链码(Hyperledger fabic)
- azure - 为 Azure Web 应用创建 .pfx 私钥证书
- ios - 为什么 SwiftUI 的 ForEach 循环的范围没有更新?
- r - 从 R 代码转换的 F# 无法从 Web 抓取数据
- knowledge-capture - 如何逆向工程或了解网站正在使用的技术?
- wordpress - 如果 wordpress 标题重复,则将帖子 ID 添加到标题
- c# - 处理 DataTemplate 元素更改