0

私は現在Pythonを学んでおり、Java /C++およびCのバックグラウンドを持っています。私は通常、デバッガーの「オブジェクト」を「調べて」何が起こっているのかをよりよく理解するのが好きなので、Pythonにとって奇妙に思える場合は、私の質問を許してください。

urllib2PythonのWebサイトでドキュメントを読んでいました。次の例が示されています。

>>> 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ページのコンテンツがダウンロードされることを理解しています。

urlopenHTMLコンテンツをダウンロードしますか?私は次のことを試みました:

content = urllib2.urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl')
print content

オブジェクトを生成します。このオブジェクトの性質は何ですか?辞書のようなオブジェクトですか?もしそうなら、どうすればそのキー値が何であるかを調べることができますか?picklingそれはPythonで使用して行われますか?

私はそのgeturl()方法を知っていますが、何をして戻ってくるのかを完全に理解したいと思いurlopen()ます。

ありがとうございました!

4

3 に答える 3

1
import pdb
pdb.set_trace()

ブレークポイントなど、ソース内の任意の場所にこれを配置します。これにより、名前とオブジェクトをインタラクティブに検査できます。一度入ったら、あなたも使うことができます

import inspect

これには、オブジェクトのプロパティとメソッドを検査するためのいくつかのオプションがありますhttp://docs.python.org/library/inspect.html#module-inspect

dir(my_object)同様のことをするための安価な方法でもあります

于 2012-08-17T15:58:22.620 に答える
1

ドキュメントから:

この関数は、次の 2 つのメソッドを追加したファイルのようなオブジェクトを返します。

したがって、ファイルのように読み取ることができます (既に行っているように)。

于 2012-08-17T15:59:20.883 に答える
0

はい。以下を使用してコンテンツを印刷できます。

print content.read()

また、オブジェクトのメソッドと属性を非常に簡単に調べることができるように、IPython を提案したいと思います。

dir(content)
于 2012-08-17T16:04:28.347 に答える