我目前正在学习Python,而且我来自Java / C ++和C背景。我通常喜欢“检查”调试器中的“对象”以更好地理解正在发生的事情,所以请原谅我的问题,如果python看起来很奇怪。
我正在阅读Python网站上的urllib2
文档。显示以下示例:
>>> import urllib2
>>> for line in urllib2.urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl'):
... if 'EST' in line or 'EDT' in line: # look for Eastern Time
... print line
我了解urlopen
会下载网页内容。
urlopen
是否下载了HTML内容?我尝试了以下操作:
content = urllib2.urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl')
print content
产生一个对象。这个对象的本质是什么?它是一个类似字典的对象吗?如果是这样,我该如何检查它的关键值是什么?是否可以在Python中使用pickling
来完成?
我知道geturl()
方法,但我想完全理解urlopen()
的作用并返回。
谢谢!
答案 0 :(得分:1)
import pdb
pdb.set_trace()
将它放在源代码中的任何位置,如断点 - 它允许您以交互方式检查名称和对象。一旦你进入,你也可以使用
import inspect
有许多选项可用于检查对象http://docs.python.org/library/inspect.html#module-inspect
的属性和方法 dir(my_object)
也是一种做类似事情的廉价方法
答案 1 :(得分:1)
答案 2 :(得分:0)
是的,您可以使用以下方式打印内容:
print content.read()
另外,我想建议IPython,这样你就可以很容易地检查对象方法和属性:
dir(content)