gpt4 book ai didi

python - 只打印字符串的内容

转载 作者:太空宇宙 更新时间:2023-11-04 10:27:33 24 4
gpt4 key购买 nike

这是我的代码:

#! /usr/bin/env python3
import subprocess
a = subprocess.check_output('echo -n "hello world!"',shell=True)
print("a="+str(a))

输出:

a=b'hello world!'

如果我在对 check_output 的调用中包含参数 universal_newlines=True,那么我会得到所需的输出:

a=hello world!

为了更好地理解现代 (Unicode) 时代文本编程的神秘世界,我想知道如何在不指定 universal_newlines=True 的情况下生成第二个输出。换句话说,我调用什么函数来转换 a 以便它产生所需的输出。

一个工作示例会大有帮助。详细的解释很好,但对于外行来说它们往往有点困惑——可能是由于使用了过多的术语,可能是因为 Python2 和 Python3 之间的差异,或者可能只是因为我很少需要考虑文本编码我的工作 -- 我使用的大多数工具不需要像这样的特殊处理。

另外:我相信第一个输出的类型是 bytes ,但是第二个输出的类型是什么?我的猜测是使用 UTF-8 编码的 str

最佳答案

正如 Ignacio 的评论最初暗示的那样,您可以使用 decode:

>>> a = b"hello world!"
>>> print("a="+str(a))
a=b'hello world!'
>>> print("a="+a.decode())
a=hello world!

关于python - 只打印字符串的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28590302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com