0

Pythonヘルプ システムを構築しようとしています。特定の単語を含むモジュールから、メソッドのすべてのドキュメントを次々に印刷したいと考えています。これは、非常に多数のメソッドまたは属性を持つモジュールで使用するためのものです。現在、これは私が行っていることです。たとえば、Tkinter.Entry などのモジュールに対して、たとえば「set」を含むメソッドを探しています。

q = []
for i in dir(Tkinter.Entry):
    if 'set' in i:
       q.append(i)
for item in q:
    help(item)

これは、名前に 'set' を含む各メソッドの pydoc の 7 つの項目を次々に表示し、インタープリターで正常に終了します。ただし、割り当てでpydocを取得できないようです。たとえば、次のようになります。

x = help(item)   # doesn't work.
# handle display code here.

ここで何が欠けていますか?

以下は、必ずしも質問の一部ではない (たとえば) contextの場合です。

これと同じ効果を得るための回避策はありますか?たとえば、htmlユーザーが現在の要素を「閉じる」をクリックするたびに次のヘルプ項目を表示する単純なものはありますか?

<html>
  <head> 
    Help page 
  </head>
  <script type="text/javascript">
    $ function closediv(){
      <!-- code to close the div goes here-->
      }
  </script>
  <body>
    <!--maybe a list of divs here-->
    <div id="help text">{% block content %} {{x}} {% endblock %}</div>
  </body>
 </html>

ブロックコンテンツに渡すことができる方法でヘルプテキストを取得する方法を見つける方法を見つけることができる限り{{X}}、残りを理解しようとします. ありがとう。

4

1 に答える 1

2

.__doc__いくつかの重要な用語をよく理解しようとすることができます。

>>> print pow.__doc__
pow(x, y[, z]) -> number

With two arguments, equivalent to x**y.  With three arguments,
equivalent to (x**y) % z, but may be more efficient (e.g. for longs).
>>> print list.__doc__
list() -> new empty list
list(iterable) -> new list initialized from iterable's items
>>> 

単純なステートメントhelp(item)では機能しません。これは次の場合と同じです:.__doc__

>>> help(if)
  File "<stdin>", line 1
    help(if)
          ^
SyntaxError: invalid syntax
>>> if.__doc__
  File "<stdin>", line 1
    if.__doc__
      ^
SyntaxError: invalid syntax
>>> 

私は見ることをお勧めしpydoc.pyます:

>>> import pydoc
>>> pydoc
<module 'pydoc' from '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pydoc.pyc'>
>>> 

簡単なステートメントを含む、すべてのドキュメントが含まれています。

于 2014-06-12T16:27:34.487 に答える