Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Base64打印问题_Python_String - Fatal编程技术网

Python Base64打印问题

Python Base64打印问题,python,string,Python,String,我有一个base64编码的字符串 当我以这种方式解码字符串时: >>> import base64 >>> base64.b64decode("XH13fXM=") '\\}w}s' 输出正常。 但当我这样使用它时: >>> d = base64.b64decode("XH13fXM=") >>> print d \}w}s 缺少某些字符 有人能提供建议吗 感谢您的高级指导。这只是一个演示问题: >>>

我有一个base64编码的字符串

当我以这种方式解码字符串时:

>>> import base64
>>> base64.b64decode("XH13fXM=")
'\\}w}s'
输出正常。

但当我这样使用它时:

>>> d = base64.b64decode("XH13fXM=")
>>> print d
\}w}s
缺少某些字符

有人能提供建议吗


感谢您的高级指导。

这只是一个演示问题:

>>> '\\}w}s'
'\\}w}s'
>>> print(_, len(_))
\}w}s 5
此字符串有5个字符。在代码中使用它时,需要转义反斜杠或使用原始字符串文字:

>>> r'\}w}s'
'\\}w}s'
>>> r'\}w}s' == '\\}w}s'
True

这只是一个展示的问题:

>>> '\\}w}s'
'\\}w}s'
>>> print(_, len(_))
\}w}s 5
此字符串有5个字符。在代码中使用它时,需要转义反斜杠或使用原始字符串文字:

>>> r'\}w}s'
'\\}w}s'
>>> r'\}w}s' == '\\}w}s'
True

当您打印字符串时,将输出字符串中的字符。当交互式shell向您显示上一条语句的值时,它将打印字符串的
\uuuu repr\uuu
,而不是字符串本身。这就是为什么它周围有单引号,而你的反斜杠被转义了

第二个示例中没有缺少字符,这是字符串中的5个字符。第一个示例添加了字符,使输出成为合法的Python字符串文字

如果要使用print语句并使输出与第一个示例类似,请使用:

print repr(d)

当您打印字符串时,将输出字符串中的字符。当交互式shell向您显示上一条语句的值时,它将打印字符串的
\uuuu repr\uuu
,而不是字符串本身。这就是为什么它周围有单引号,而你的反斜杠被转义了

第二个示例中没有缺少字符,这是字符串中的5个字符。第一个示例添加了字符,使输出成为合法的Python字符串文字

如果要使用print语句并使输出与第一个示例类似,请使用:

print repr(d)