首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在“子进程”函数中,`text=True`时的默认编码是什么?

在“子进程”函数中,`text=True`时的默认编码是什么?
EN

Stack Overflow用户
提问于 2022-10-31 01:26:12
回答 1查看 23关注 0票数 0

在像subprocess.runsubprocess.check_output这样的函数中,选项text=True (及其遗留别名universal_newlines=True)导致输出被解码为文本并转换为str,而不是返回bytes

我知道您可以使用encoding=选择特定的输出编码。但是,在使用text=True时,我在文档中没有看到默认编码是什么。

默认编码集在哪里/如何设置,可以配置吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-31 01:31:40

答案实际上是在文档中,尽管有些被埋葬了:

如果指定了编码或错误,或者文本为真,则使用指定的编码和错误或io.TextIOWrapper默认值以文本模式打开stdin、stdout和stderr的文件对象。

在指向io.TextIOWrapper文档的链接之后,您可以看到可以使用sys.getencoding()找到默认的编码,这与平台和区域设置有关。

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

https://stackoverflow.com/questions/74257943

复制
相关文章

相似问题

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