|
Rozdział 5: Moduły
1: Co to jest moduł?
- 2: Ścieżka poszukiwań modułów
- 3: Skompilowane pliki Pythona
- 4: Moduły standardowe
5: Funkcja dir()
- 6: Pakiety
- 7: Importowanie * z pakietu
- 8: Odniesienia pomiędzy pakietami
Lekcja 5: Funkcja dir()
Funkcja wbudowana dir() służy do znajdywania wszystkich nazw, które są zdefiniowane w module. Zwraca ona posortowaną listę napisów:
>>> import fibo, sys
>>> dir(fibo)
['__builtins__','__doc__','__file__','__name__', 'fib', 'fib2']
>>> dir(sys)
['__name__', 'argv', 'builtin_module_names', 'copyright', 'exit',
'maxint', 'modules', 'path', 'ps1', 'ps2', 'setprofile', 'settrace',
'stderr', 'stdin', 'stdout', 'version']
Wywołana bez argumentów dir() zwróci listę nazw, które właśnie zdefiniowałeś:
>>> a = [1, 2, 3, 4, 5]
>>> import fibo, sys
>>> fib = fibo.fib
>>> dir()
['__builtins__','__doc__','__name__', 'a', 'fib', 'fibo', 'sys']
Zauważ, że zwrócona została lista wszystkich typów nazw: zmiennych, modułów, funkcji, itd.
dir() nie poda listy nazw funkcji i zmiennych wbudowanych. Jeśli chce się uzyskać taką listę, to posłuż się standardowym modułem __builtin__:
>>> import __builtin__
>>> dir(__builtin__)
['AccessError', 'AttributeError', 'ConflictError', 'EOFError', 'IOError',
'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt',
'MemoryError', 'NameError', 'None', 'OverflowError', 'RuntimeError',
'SyntaxError', 'SystemError', 'SystemExit', 'TypeError', 'ValueError',
'ZeroDivisionError', '__name__', 'abs', 'apply', 'chr', 'cmp', 'coerce',
'compile', 'dir', 'divmod', 'eval', 'execfile', 'filter', 'float',
'getattr', 'hasattr', 'hash', 'hex', 'id', 'input', 'int', 'len', 'long',
'map', 'max', 'min', 'oct', 'open', 'ord', 'pow', 'range', 'raw_input',
'reduce', 'reload', 'repr', 'round', 'setattr', 'str', 'type', 'xrange']
|
|