Pythonを書き始めて、JavaScript、JavaやRubyと比べて躓きがちな書き方上の違和感ある点をメモしておきます。クラスのメソッドの定義の第一引数にselfが必要 class Foo def bar(self) print self.poo # selfを引数に与えなくても宣言はできるが、その関数の中から自分自身は見えない def poo() print 'poo' クラスのインスタンスを作るには関数表記を使う f = Foo() f.bar() f = new Foo()のようには書かない 関数の外の変数は読み出しのみ foo = 'a' def bar(): print foo # 'a' def poo(): foo = 'b' print foo # 'b' print foo # 'a' クラスのデータメンバを参照する際レシーバを省略できない class Foo ba