2012年7月24日火曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のV部(モジュールのインポート、リロード)の19章(モジュールのインポート、リロードとインポート)練習問題3を解いてみる。

3.

reloadはもう一度モジュールをインポートする機能があり、対話型セッションを終了せずに変更したモジュールのその変更を反映させたい場合等に使用する。

コード(TextWrangler)

sample.py

#!/usr/bin/env python
#encoding: utf-8

a = 10
b = "Python"
def f():
 print("Hello, Python!")

入出力結果(Terminal)

$ python
Python 3.2.3 (default, Apr 18 2012, 20:17:30) 
[GCC 4.2.1 Compatible Apple Clang 3.0 (tags/Apple/clang-211.12)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sample
>>> sample.a
10
>>> sample.b
'Python'
>>> sample.f()
Hello, Python!
>>> 
[1]+  Stopped                 python
$ vi sample.py
$ cat sample.py
#!/usr/bin/env python
#encoding: utf-8

a = 20
b = "python3"
def f():
 print("Hello, python3!")
$ fg
python
import sample
>>> sample.a
10
>>> sample.b
'Python'
>>> sample.f()
Hello, Python!
>>> import imp
>>> imp.reload(sample)
<module 'sample' from 'sample.py'>
>>> sample.a
20
>>> sample.b
'python3'
>>> sample.f()
Hello, python3!
>>> quit()
$

0 コメント:

コメントを投稿