2009-06-09 49 views
7

有什麼方法可以在Python控制檯中使用關鍵字搜索特定的程序包/函數嗎?如何使用python控制檯搜索幫助

例如,我可能想要搜索PDF格式的PDF相關任務。

+0

我需要能夠「搜索」包... PDF只是用來在這裏舉例...使用「幫助」或「目錄」的功能只能幫助,如果我首先知道使用什麼軟件包。 – 2009-06-09 11:12:37

+0

我需要類似Windows分發提供的「模塊文檔」,但是我需要通過控制檯來完成。 – 2009-06-09 11:31:43

回答

8

pydoc -k標誌搜索文檔。

pydoc -k <keyword> 
    Search for a keyword in the synopsis lines of all available modules. 

從終端,運行..

$ pydoc -k pdf 

..例如:

$ pydoc -k pdf 
PdfImagePlugin 
wx.lib.pdfwin 
PIL.PdfImagePlugin 

它不搜索文檔中的內容,但它會搜索所有模塊的名稱 - 如果這還不夠,我建議使用谷歌或StackOverflow上搜索「Python的PDF模塊」或類似

+2

'pydoc'不被識別爲內部或外部命令,可操作程序或批處理文件。 (Win) – 2016-03-06 16:42:26

0

嘗試help()dir()。 AFAIR在純Python安裝中沒有內置的pdf支持。找到幫助Python模塊的另一種方法是,以谷歌;)

文檔:

http://docs.python.org/library/functions.html#help

http://docs.python.org/library/functions.html#dir

編輯:

>>> import os 
>>> def search_help(keyword): 
...  os.system('python Lib/pydoc.py -k %s' % keyword) 
... 
>>> search_help('math') 
cmath - This module is always available. It provides access to mathematical 
math - This module is always available. It provides access to the 
test.test_cmath 
test.test_math 
>>> search_help('pdf') 
>>> _ 

你必須有主蟒蛇目錄中你的路徑。它不會在IDLE下工作。 HTH。

+0

@Umair - 使用與您的python安裝捆綁在一起的幫助系統。你也可以試試這個 - http://pypi.python.org/pypi?:action=browse - 它是一個按模塊排序的python模塊列表。 @Jaime - 你可以使用幫助('數學')而不需要輸入任何東西。 – uolot 2009-06-09 11:31:10

1

在控制檯輸入help(對象):

Python 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1500 32 bit (Intel)] on 
win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> help(dir) 
Help on built-in function dir in module __builtin__: 

dir(...) 
    dir([object]) -> list of strings 
....  

可惜的是沒有爲PDF沒有幫助:

>>> help(pdf) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
NameError: name 'pdf' is not defined 
>>> 

正如paffnucy說嘗試搜索互聯網(SO韋裏工作很好:)

這個網站也可以幫助你:http://www.gotapi.com/python

8

你可以使用幫助訪問您已經導入了不同的模塊,例如文檔字符串,請嘗試以下操作:

help(math) 

,你會得到一個錯誤,

import math 
help(math) 

,你會得到可用的方法列表在模塊中,但僅在您導入之後。它也適用於單獨的功能,例如輸入數學試試後:

help(math.sin) 

要處理pdf,您可能需要安裝第三方模塊。快速搜索已經使我這個結果,我沒有嘗試過:

http://www.devshed.com/c/a/Python/Python-for-PDF-Generation/

5

幫助( 「模塊」)

>>> help("modules") 

Please wait a moment while I gather a list of all available modules... 

C:\Program Files\Python26\lib\pkgutil.py:110: DeprecationWarning: The wxPython compatibility package is no longer automatically generated or actively maintained. Please switch to the wx package as soon 
    __import__(name) 
ArgImagePlugin  WmfImagePlugin  dbhash    pyclbr 
BaseHTTPServer  XVThumbImagePlugin decimal    pydoc 
Bastion    XbmImagePlugin  difflib    pydoc_topics 
BdfFontFile   XpmImagePlugin  dircache   pyexpat 
BmpImagePlugin  _LWPCookieJar  dis     quopri 
BufrStubImagePlugin _MozillaCookieJar distutils   random 
CGIHTTPServer  __builtin__   doctest    re 
Canvas    __future__   dumbdbm    repr 
ConfigParser  _abcoll    dummy_thread  rexec 
ContainerIO   _ast    dummy_threading  rfc822 
Cookie    _bisect    email    rlcompleter 
CurImagePlugin  _bsddb    encodings   robotparser 
DcxImagePlugin  _bytesio   errno    runpy 
Dialog    _codecs    exceptions   sched 
DocXMLRPCServer  _codecs_cn   filecmp    select 
EpsImagePlugin  _codecs_hk   fileinput   sets 
ExifTags   _codecs_iso2022  fnmatch    sgmllib 
FileDialog   _codecs_jp   formatter   sha 
FitsStubImagePlugin _codecs_kr   fpformat   shelve 
FixTk    _codecs_tw   fractions   shlex 
FliImagePlugin  _collections  ftplib    shutil 
FontFile   _csv    functools   signal 
FpxImagePlugin  _ctypes    future_builtins  site 
GbrImagePlugin  _ctypes_test  gc     smtpd 
GdImageFile   _elementtree  genericpath   smtplib 
GifImagePlugin  _fileio    getopt    sndhdr 
GimpGradientFile _functools   getpass    socket 
GimpPaletteFile  _hashlib   gettext    sqlite3 
GribStubImagePlugin _heapq    glob    sre 
HTMLParser   _hotshot   gzip    sre_compile 
Hdf5StubImagePlugin _imaging   hashlib    sre_constants 
IcnsImagePlugin  _imagingft   heapq    sre_parse 
IcoImagePlugin  _imagingmath  hmac    ssl 
ImImagePlugin  _imagingtk   hotshot    stat 
Image    _json    htmlentitydefs  statvfs 
ImageChops   _locale    htmllib    string 
ImageColor   _lsprof    httplib    stringold 
ImageDraw   _md5    idlelib    stringprep 
ImageDraw2   _msi    ihooks    strop 
ImageEnhance  _multibytecodec  imageop    struct 
ImageFile   _multiprocessing imaplib    subprocess 
ImageFileIO   _random    imghdr    sunau 
ImageFilter   _sha    imp     sunaudio 
ImageFont   _sha256    imputil    symbol 
ImageGL    _sha512    inspect    symtable 
ImageGrab   _socket    io     sys 
ImageMath   _sqlite3   itertools   tabnanny 
ImageMode   _sre    json    tarfile 
ImageOps   _ssl    keyword    telnetlib 
ImagePalette  _strptime   lib2to3    tempfile 
ImagePath   _struct    linecache   test 
ImageQt    _subprocess   locale    textwrap 
ImageSequence  _symtable   logging    this 
ImageStat   _testcapi   macpath    thread 
ImageTk    _threading_local macurl2path   threading 
ImageTransform  _tkinter   mailbox    time 
ImageWin   _warnings   mailcap    timeit 
ImtImagePlugin  _weakref   markupbase   tkColorChooser 
IptcImagePlugin  _winreg    marshal    tkCommonDialog 
JpegImagePlugin  abc     math    tkFileDialog 
McIdasImagePlugin aifc    md5     tkFont 
MicImagePlugin  anydbm    mhlib    tkMessageBox 
MimeWriter   array    mimetools   tkSimpleDialog 
MpegImagePlugin  ast     mimetypes   toaiff 
MspImagePlugin  asynchat   mimify    token 
OleFileIO   asyncore   mmap    tokenize 
PIL     atexit    modulefinder  trace 
PSDraw    audiodev   msilib    traceback 
PaletteFile   audioop    msvcrt    tty 
PalmImagePlugin  base64    multifile   turtle 
PcdImagePlugin  bdb     multiprocessing  types 
PcfFontFile   binascii   mutex    unicodedata 
PcxImagePlugin  binhex    netrc    unittest 
PdfImagePlugin  bisect    new     update_manifest 
PixarImagePlugin bsddb    nntplib    urllib 
PngImagePlugin  bz2     nt     urllib2 
PpmImagePlugin  cPickle    ntpath    urlparse 
PsdImagePlugin  cProfile   nturl2path   user 
Queue    cStringIO   numbers    uu 
ScrolledText  calendar   opcode    uuid 
SgiImagePlugin  cgi     operator   warnings 
SimpleDialog  cgitb    optparse   wave 
SimpleHTTPServer chunk    os     weakref 
SimpleXMLRPCServer cmath    os2emxpath   webbrowser 
SocketServer  cmd     parser    whichdb 
SpiderImagePlugin code    pdb     winsound 
StringIO   codecs    pickle    wsgiref 
SunImagePlugin  codeop    pickletools   wx 
TarIO    collections   pipes    wxPython 
TgaImagePlugin  colorsys   pkgutil    wxversion 
TiffImagePlugin  commands   platform   xdrlib 
TiffTags   compileall   plistlib   xml 
Tix     compiler   popen2    xmllib 
Tkconstants   contextlib   poplib    xmlrpclib 
Tkdnd    cookielib   posixfile   xxsubtype 
Tkinter    copy    posixpath   zipfile 
UserDict   copy_reg   pprint    zipimport 
UserList   csv     profile    zlib 
UserString   ctypes    pstats 
WalImageFile  curses    pty 
WbmpImagePlugin  datetime   py_compile 

Enter any module name to get more help. Or, type "modules spam" to search 
for modules whose descriptions contain the word "spam". 

>>> 
2

(年後)我現在用pip search
yolk -M或-H包名:-M元數據,-H瀏覽其網頁。


要在本地搜索PyPI(Python Package Index)包信息,請嘗試pypi-grep。舉個例子:pypi-grep 'pyqt' - >

# day status packagename version homepage summary 
2009-06-07 3 "pydee" 0.4.11 http://code.google.com/p/pydee/ 
    Pydee development environment and its PyQt4-based IDE tools: ... 
2009-06-05 4 "Sandbox" 0.9.5 http://www.qtrac.eu/sandbox.html 
    A PyQt4-based alternative to IDLE 
... 

pypi-grep只是每包的PyPI一個長線, 與你在上面看到的信息,加上一個簡單的bash腳本來egrep命令文件的文件。
爲什麼?清理本地文件非常快速,非常簡單,對於舊版本的 Unix人員和簡單搜索: 「什麼是XYZ?」

hg clone http://bitbucket.org/denisb/pypi-grep/ 應下載pypi-greppypi-grepfile-2009-06-08等; 將它們移動到PATH中的目錄。 (首先easy_install hg如果你沒有做hg

注:

的PyPI中,grepfile有每包只有一個版本,最新的; 多行摘要被折成一個長行 (我用pypi-grep | less -iS砍)。

pypi-grep -h列出了幾個選項

本數據來源於http://pypi.python.org/pypi XMLRPC, 但要注意:有些軟件包在list_packages沒有package_releases 或沒有releasedata,和幾個releasedatas超時 (timeout_xmlrpclib); 你看到的只是你所得到的。

歡迎反饋。

4

通過運行命令help("modules pdf"),可以在其描述中搜索包含「pdf」的模塊。

1

思考遞歸:

>>> help(help) 

Help on _Helper in module site object: 

class _Helper(builtins.object) 
| Define the builtin 'help'. 
| This is a wrapper around **pydoc.help** (with a twist). 
| 

... 

從這裏:

>>> import pydoc 
>>> help(pydoc) 
Help on module pydoc: .... 

很多在Python文檔搜索有必要的信息的。

3

點是一個很好的資源。如果安裝了PIP(如果沒有的話,說明here),然後使用Windows命令外殼,你可以做到以下幾點:

pip search pdf 

它返回的選項太多了。

C:\Python27\Scripts>pip search pdf 
mwlib.rl     - generate pdfs from mediawiki markup 
slc.publications   - A content type to store and parse pdf publications 
PyPDFLite     - Simple PDF Writer. 
pdfminer     - PDF parser and analyzer 
zopyx.convert    - A Python interface to XSL-FO libraries (Conversion 
          HTML to PDF, RTF, DOCX, WML and ODT) 
WeasyPrint    - WeasyPrint converts web documents to PDF. 
zopyx.convert2   - A Python interface for the conversion of HTML to 
          PDF, RTF, DOCX, WML and ODT) - belongs to 
          zopyx.smartprintng.core 
collective.pdfpeek  - A Plone 4 product that generates image thumbnail 
          previews of PDF files stored on ATFile based 
          objects. 
pisa      - PDF generator using HTML and CSS