ご存知の通りホームディレクトリ上の
~\.ipython\profile_default\startup\startup.ipy
なるものにpythonコード入れておくと、IpythonやJupyter起動したときに自動的に実行してくれる。
その際、よく入れるコマンドとしてnumpyやpandasのインポートを行う。
startup.ipy(改良前)
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns # <- matplotlibの強化版
しかしながらいくつもインポートしてると、インポートに時間がかかったりして今何をインポートしているのか見えづらいのが少し気にかかった。
そこで、import
をexec
で実行してやって、インポート中のモジュールをprint
するように改造した。
startup.ipy(改良後)
__modules__ = ('numpy',
'pandas',
'matplotlib.pyplot',
'seaborn')
__standfor__ = {'numpy': 'np',
'pandas': 'pd',
'matplotlib.pyplot': 'plt',
'seaborn': 'sns'}
for __module__ in __modules__:
__execution__ = 'import %s as %s' % (__module__, __standfor__[__module__])
print(__execution__)
exec(__execution__)
こうすることで、Ipython立ち上げる時に、真っ暗画面の裏でpythonが何をやっているのかわからない状態によるストレスから解放されました。
おしまい。
更新2016/11/12
__hogehoge__
のようにアンダーバー二つでくくると外部から見えなくなる。
影響ないと思うけど、後になって「指定した覚えのないmoduleとかstandforとかいう変数ナンダ???」ってならないようにする措置。