開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc.(Text Editor)
- プログラミング言語: Python
『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のVI部(クラスとオブジェクト指向プログラミング)の22章(Pythonでのオブジェクト指向プログラミング)の練習問題3、4、5、6、7を解いてみる。
その他参考書籍
3, 4, 5, 6, 7.
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 -*- class A: def __init__(self, a): #初期化 self.data = a print("Hello, __init__!") def f(self): print("data: {0}".format(self.data)) class B(A): # Aがスーパークラス, Bがサブクラス(Aを継承) def __init__(self, a, b): A.__init__(self, a) self.data2 = b def f(self): A.f(self) print("data2: {0}".format(self.data2)) # クラスからインスタンスはいくつでも作成可能 a = A("Python") b = A("Perl") a.f() # クラスの関数(メソッドの第1引数はインスタンス自身 # 以下の2つは同じ意味 b.f() A.f(b) c = B("JavaScript", "HTML5") c.f()
入出力結果(Terminal)
$ ./sample.py Hello, __init__! Hello, __init__! data: Python data: Perl data: Perl Hello, __init__! data: JavaScript data2: HTML5 $
0 コメント:
コメントを投稿