Python - lista funkcji z biblioteki standardowej

Python - lista funkcji z biblioteki standardowej
CS
  • Rejestracja:ponad 18 lat
  • Ostatnio:prawie 14 lat
0

potrzebuję liste funkcji z biblioteki standardowej Pythona, a dokladniej najlepiej zeby nazwy tych funkcji byly oddzielone jakims separatorem bo musze je przerobic na cos takiego:

funkcja1 | funkcja2 | funkcja 3 ....

bo piszę interpreter (mniejsza o szczegóły). Ostatecznie jezeli sa w innej postaci te nazwy to tez by mi były potrzebne, jakos je wyrazeniami regularnymi powycinam. A ostatecznie jezeli zadne z powyzszych to potrzebny mi jest jakikolwiek zbiór nazw tych funkcji, istnieje taki?

z gory dzieki


szczególnie pomogli mi: johny_bravo, chodnik, J2ME
sznurek
  • Rejestracja:ponad 17 lat
  • Ostatnio:ponad 16 lat
  • Postów:49
0

Potrzebujesz listy funkcji całej biblioteki standardowej Pythona? Przecież ona ogromna jest :)
Ogólnie ja bym to tak zrobił:

Kopiuj
>>> dir(__builtin__)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'Deprec
ationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False',
 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError
', 'ImportWarning', 'IndentationError', 'IndexError', 'KeyError', 'KeyboardInter
rupt', 'LookupError', 'MemoryError', 'NameError', 'None', 'NotImplemented', 'Not
ImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'Ref
erenceError', 'RuntimeError', 'RuntimeWarning', 'StandardError', 'StopIteration'
, 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'True
', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError',
 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'Valu
eError', 'Warning', 'WindowsError', 'ZeroDivisionError', '__debug__', '__doc__',
 '__import__', '__name__', 'abs', 'all', 'any', 'apply', 'basestring', 'bool', '
buffer', 'callable', 'chr', 'classmethod', 'cmp', 'coerce', 'compile', 'complex'
, 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval
', 'execfile', 'exit', 'file', 'filter', 'float', 'frozenset', 'getattr', 'globa
ls', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'intern', 'isinstan
ce', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'long', 'map', 'm
ax', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'quit', 'range',
'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr',
'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unic
hr', 'unicode', 'vars', 'xrange', 'zip']

No, to jest już jakiś początek :)
Można tak dla każdego modułu:

Kopiuj
>>> import urllib
>>> dir(urllib)

Itd.

Można też zajrzeć na http://docs.python.org
Powodzenia

PS. Co do oddzielenia ich separatorem to można:

Kopiuj
>>> sep = '|'
>>> print sep.join(dir(__builtins__))

"Od słowa do słowa, swobodnie płynie rozmowa
Z potrzeby zrozumienia rodzi się wymiana poglądowa" Bless :)
CS
  • Rejestracja:ponad 18 lat
  • Ostatnio:prawie 14 lat
0

to jest bdb rozwiazanie, acz niestety zapomnialem dodac ze potrzebuje te nazwy tak zeby je uzyc w C++,, a w internecie nie istnieje zaden spis oddzielony separatorem?

z gory dzieki :)


szczególnie pomogli mi: johny_bravo, chodnik, J2ME
Coldpeer
Moderator
  • Rejestracja:ponad 19 lat
  • Ostatnio:około rok
  • Lokalizacja:Londyn
0

no to ich użyj, o co chodzi? listę masz.


<font size="1">Jeśli starasz się, by Twój system był idiotoodporny, zawsze znajdzie się idiota, który jest bardziej pomysłowy od Ciebie.</span>
mysz
  • Rejestracja:ponad 18 lat
  • Ostatnio:prawie 9 lat
  • Postów:79
0

Uproszczona wersja:

Kopiuj
import sys

for m in sorted (sys.modules.keys ()):
  if m.startswith ('_'):
    continue
  print 
  print m
  for f in dir (sys.modules[m]):
    if not f.startswith ('_') and callable (getattr (sys.modules[m], f)):
      print '%s.%s' % (m, f)

Dostosuj sobie tylko przedostatnią linię do tego co dokładnie chcesz otrzymać (może Ci pomóc moduł types), a ostatnią do tego jak chcesz to otrzymać ;)


Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.