2012年2月14日火曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7)のIV部(モジュール)のまとめ演習5(パッケージインポート)を解いてみる。

5.

mymod.py

コード(TextWrangler)

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

def countLines(name):
 return len(open(name).readlines())

def countChars(name):
 return len(open(name).read())

def test(name):
 return countLines(name), countChars(name)

if __name__ == '__main__':
 print test('mymod.py')

myclient1.py

コード(TextWrangler)

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

from mymod import *

name = 'mymod.py'
print countLines(name), countChars(name), test(name)

myclient2.py

コード(TextWrangler)

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

import mymod

name = 'mymod.py'
print mymod.countLines(name), mymod.countChars(name), mymod.test(name)

__init__.py

コード(TextWrangler)

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

print "__init__"

入出力結果(Terminal)

$ ls ./mypkg
__init__.py myclient1.py myclient2.py mymod.py
kamimuras-MacBook-Pro:desktop kamimura$ python
Python 2.7.2 (default, Feb 12 2012, 23:50:38) 
[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 mypkg.mymod
__init__
>>> name='mypkg/mymod.py'
>>> mypkg.mymod.countLines(name)
14
>>> mypkg.mymod.countChars(name)
263
>>> mypkg.mymod.test(name)
(14, 263)
>>>
$

0 コメント:

コメントを投稿