gpt4 book ai didi

python - 取消转义字符串中的字符串

转载 作者:可可西里 更新时间:2023-11-01 17:04:11 26 4
gpt4 key购买 nike

我正在使用 urllib2,并尝试从 Response 对象中提取可打印形式的 header 。

目前我正在打印 str(response.info()),但是打印的内容本身就是一个 Python 字符串(至少在我看来是这样)。

(Pdb) p str(response.info())
'Date: Tue, 23 Feb 2010 03:12:26 GMT\r\nServer: Apache\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 9045\r\nConnection: close\r\nContent-Type: text/html; charset=ISO-8859-1\r\n'

我需要将该字符串转换为“实际”字符串,例如通过求值或类似方式。我发现的最佳理论解决方案是使用:

s = str(response.info())
print s.decode("string_escape")

但这行不通。进一步增加困惑的是如何处理字符串中的引号,调用 eval(s)str(s) 也不起作用。

是否有更好的方法在不引用的情况下提取响应中的原始 header ,或者如上解码字符串 s 的方法?

最佳答案

str(info()) 确实给出一个普通字符串:

>>> import urllib2
>>> f = urllib2.urlopen('http://tejp.de')
>>> print str(f.info())
Connection: close
Vary: Accept-Encoding
Content-Type: text/html
Accept-Ranges: bytes
ETag: "-807357257"
Last-Modified: Wed, 01 Jul 2009 10:05:34 GMT
Content-Length: 285
Date: Tue, 23 Feb 2010 03:24:10 GMT
Server: lighttpd/1.4.19

只有调试器的 p 命令以转义形式打印字符串。

关于python - 取消转义字符串中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2315889/

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