0

次の例が示されているPythonチュートリアルを調べています。

>>> 'str'.strip() + 'ing'   #  <-  This is ok

この例では(私が理解しているように)str、関数strip()が呼び出される文字列です。

その関数が>>> dir("abc"). 確かに機能は次のようにリストされています 'strip'

質問 1:一部の関数が とリストされ__name__、他の関数が とリストされているのはなぜnameですか?

質問 2:この機能に関する詳細情報を知りたいです。実行help("abc")中 (文字列で実行できるすべての関数のマニュアル ページを取得することを期待)stripは、一覧に表示されません。なんで?特定の機能の詳細はどこで確認できますか?

質問 3: PyCharmを使用すると、次のオートコンプリートが機能することが期待されますが、何も表示されません。何故ですか?

ここに画像の説明を入力

4

3 に答える 3

4
  1. Functions surrounded by double underscores are special functions that can be overridden to implement special behaviors. For example, the __getitem__ function, when implemented in a class, allows indexed access to items in that class. (In other words, a[5] is equivalent in most contexts to a.__getitem__(5)). The underscores just signal that they're special, and require some special handling. (For example, don't invent your own.)

  2. When you pass a string to help, it treats the string as a query. For example, help('class') brings up a bunch of information about classes. If you want the help text for string objects, do help(str) or help('str').

  3. I don't use PyCharm, so I can't help there.

于 2012-06-02T03:12:11.500 に答える
1

help("abc")抽象基本クラスのヘルプを表示する代わりに、 str.stripメソッドhelp(str)を含む文字列のヘルプを表示してみてください。

于 2012-06-02T03:13:04.980 に答える
0

3 の答え[設定] | [設定]で Python インタープリターが指定されていることを確認してください。プロジェクトインタープリター?

あなたの例で得られるものは次のとおりです。 PyCharm での補完

于 2012-06-03T21:52:30.537 に答える