-3

クラス内で使用可能なメソッドをどのように把握しますか?

例 :

urllib.request について学ぼうとしています。ドキュメントで urlopen() を見つけました:

http://docs.python.org/3.0/library/urllib.request.html

ので、私は持っています :

response = urllib.request.urlopen(url)

これは何を返しますか?おそらくオブジェクトになることはわかっていますが、このオブジェクトのメソッドは何ですか? 最終的に、例にたどり着き (アイデアが紹介された場所から遠く離れたページの下部で立ち往生)、read() を発見しましたが、.decode() を見つけるためにドキュメントの外を調べなければなりませんでした。このライブラリの全体的な目的は.

docs.python.org ページの多くでこの種の問題が発生しています。より良いドキュメントがどこかにありますか、それとも間違った方法で学習しようとしていますか?

4

4 に答える 4

4

のドキュメントのキー フレーズurlopenは次のとおりです。

この関数は、urllib.response モジュールからの 2 つの追加メソッドを含むファイルのようなオブジェクトを返します。

これがファイルのようなオブジェクトであるという事実は、すべての通常のファイル操作関数 ( readclose) が返されたオブジェクトにも適用されることを示しています。

于 2013-09-06T21:47:21.197 に答える
4

リンク先のドキュメントには次のように書かれています。

この関数は、urllib.response モジュールからの 2 つの追加メソッドを含むファイルのようなオブジェクトを返します。

geturl() — return the URL of the resource retrieved, commonly used to determine if a redirect was followed
info() — return the meta-information of the page, such as headers, in the form of an http.client.HTTPMessage instance (see Quick Reference to HTTP Headers)

鉱山を強調します。「ファイルのようなオブジェクト」は次のように定義されます

ファイルオブジェクト

ファイル指向 API (read() や write() などのメソッドを使用) を基になるリソースに公開するオブジェクト。ファイル オブジェクトは、その作成方法に応じて、実際のディスク上のファイル、または別のタイプのストレージまたは通信デバイス (標準入出力、メモリ内バッファ、ソケット、パイプなど) へのアクセスを仲介できます。 . ファイル オブジェクトは、ファイルのようなオブジェクトまたはストリームとも呼ばれます。


@abarnert が指摘しているように、返された object のメソッドに明示的にリンクする新しい docsを使用したほうがよいでしょう。

于 2013-09-06T21:47:26.510 に答える
3

まだ Ipythonを使用していない場合は、使用する必要があります。次に、urllib と入力します。タブを押して利用可能なすべてのオプションを表示し、返されたものに対して同じことを行います。関数の後に疑問符を入力すると、ドキュメントが表示されます。疑問符が 2 つあると、ソースが表示されることがよくあります。

私は常にオンライン ドキュメントが非常に役立つことを発見しましたが、その価値はあります。説明の早い段階で urllib.request.urlopen がオブジェクトのようなファイルを返すと言っています

于 2013-09-06T21:47:09.643 に答える