首页 / PYTHON / python3打印到字符串
python3打印到字符串
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python3打印到字符串,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1132字,纯文字阅读大概需要2分钟。
内容图文
![python3打印到字符串](/upload/InfoBanner/zyjiaocheng/727/6cdc2457bb1f4986827f1a649d4d03da.jpg)
使用Python 3,我有一个控制台应用程序,我正在移植到GUI.代码有一堆打印语句,如下所示:
print(”,’p’,”,sep =”,end =”)
(实际上,位置参数实际上是从函数返回的,并且可能有多于或少于3,如下所示:
print(f1(),f2(),f3(),sep =”,end =”)
我想将这些调用转换为:
GuiPrintLine(”,’p’,”,sep =”,end =”)
其中每一行最终使用GUI框架呈现.
如果我可以将参数转换为字符串,这很容易做到.我想将参数列表格式化为单个字符串,打印通常会输出如下:
def GuiPrintLine(*args, **kwargs):
s = text.format(*args, **kwargs)
# ... then display the string on the gui ...
但是,这需要格式字符串(文本).有一种简单的方法可以自动生成与打印功能相同的输出吗?我意识到我可以通过用sep和end结束所有args来模拟打印,但我更愿意使用内置的解决方案(如果有的话).
使用打印和重定向sysout是不具吸引力的,因为它需要修改应用程序的全局状态,sysout可能同时用于其他诊断.
看起来这在Python中应该是微不足道的,所以也许我只是遗漏了一些明显的东西.
谢谢你的帮助!
解决方法:
通过字符串io找到答案.有了这个,我不必模拟Print对sep / end的处理,甚至检查是否存在.
import io
def print_to_string(*args, **kwargs):
output = io.StringIO()
print(*args, file=output, **kwargs)
contents = output.getvalue()
output.close()
return contents
内容总结
以上是互联网集市为您收集整理的python3打印到字符串全部内容,希望文章能够帮你解决python3打印到字符串所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。