メンバの取得 (dir)
Pythonではモジュール内で定義されている関数、属性などの一覧を取得する事が出来ます。ちょっとしたデバッグにも使えますので覚えておくと便利です。
「dir」関数を使用します。引数なしの場合は自分自身のメンバを、引数にモジュールを渡した時にはそのモジュール内で定義されているメンバを取得します。
# -*- coding: utf-8 -*-
print '----------------------------------'
print dir()
python_dir = 'python-izm'
print '----------------------------------'
print dir()
print '----------------------------------'
import sys
for one in dir(sys):
print one
--実行結果--
※実行環境によって出力内容が変更される可能性があります
----------------------------------
['__builtins__', '__doc__', '__file__', '__name__', '__package__']
----------------------------------
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'python_dir']
----------------------------------
__displayhook__
__doc__
__excepthook__
__name__
__package__
__stderr__
__stdin__
__stdout__
_clear_type_cache
_current_frames
_getframe
api_version
argv
builtin_module_names
byteorder
call_tracing
callstats
copyright
displayhook
・
・
・
--以下略--
2回目の「dir」関数呼び出し時には、直前に定義した変数「python_dir」が追加されているのがわかります。最後に「sys」モジュール内の定義値の出力を行っています。
色々なセパレータを非環境依存で取得してみましょう!
▶応用編:セパレータの取得
