Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.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
将字节转换为str python2.7_Python_Python 2.7_Decode_Python Unicode - Fatal编程技术网

将字节转换为str python2.7

将字节转换为str python2.7,python,python-2.7,decode,python-unicode,Python,Python 2.7,Decode,Python Unicode,我有一本字典 k ={'Creator': '\xfe\xff\x00M\x00i\x00c\x00r\x00o\x00s\x00o\x00f\x00t\x00\xae\x00 \x00O\x00f\x00f\x00i\x00c\x00e\x00 \x00W\x00o\x00r\x00d\x00 \x002\x000\x000\x007'} 它包含pdf的元数据。在pdf属性中,创建者是Microsoft Office Word 2007。在本例中,我无法将k['Creator']转换为“Mi

我有一本字典

k ={'Creator': '\xfe\xff\x00M\x00i\x00c\x00r\x00o\x00s\x00o\x00f\x00t\x00\xae\x00 \x00O\x00f\x00f\x00i\x00c\x00e\x00 \x00W\x00o\x00r\x00d\x00 \x002\x000\x000\x007'}

它包含pdf的元数据。在pdf属性中,创建者是Microsoft Office Word 2007。在本例中,我无法将
k['Creator']
转换为“Microsoft Office Word 2007”

数据被编码为UTF-16。解码它:

print k['Creator'].decode('utf16')
这将产生一个
unicode
值;您的控制台可能无法处理包含的非ASCII
>
码点

演示:


数据被编码为UTF-16。解码它:

print k['Creator'].decode('utf16')
这将产生一个
unicode
值;您的控制台可能无法处理包含的非ASCII
>
码点

演示:


这将提供所需的字符串

代码:

>>> print(k['Creator'].decode('utf16','ignore')).encode('utf-8') 
Microsoft® Office Word 2007 
>>> type((k['Creator'].decode('utf16','ignore')).encode('utf-8')) 
<type 'str'>
打印(k['Creator'].decode('utf16','ignore')).encode('utf-8')) Microsoft®Office Word 2007 >>>类型((k['Creator'].decode('utf16','ignore')).encode('utf-8'))
这将提供所需的字符串

代码:

>>> print(k['Creator'].decode('utf16','ignore')).encode('utf-8') 
Microsoft® Office Word 2007 
>>> type((k['Creator'].decode('utf16','ignore')).encode('utf-8')) 
<type 'str'>
打印(k['Creator'].decode('utf16','ignore')).encode('utf-8')) Microsoft®Office Word 2007 >>>类型((k['Creator'].decode('utf16','ignore')).encode('utf-8'))
输出是::u'Microsoft\xae Office Word 2007'。它是unicode类型而不是字符串。@prateek:是的,这就是重点。解码后,您有一个
unicode
对象。您可以将其再次编码为不同的编码,但这取决于您将如何处理该值。@Martin谢谢您的帮助,但我想将字节数据转换为字符串,我找到了下面发布的代码。输出为::u'Microsoft\xae Office Word 2007。它是unicode类型,而不是字符串。@Pratek:是的,这就是重点。解码后,您有一个
unicode
对象。您可以将其再次编码为不同的编码,但这取决于您将如何处理该值。@Martin谢谢您的帮助,但我想将字节中的数据转换为字符串,我找到了下面发布的代码