Hatena::Grouppython

nelnal@python

2007-11-07

[]インスタンスにメソッドを追加 23:34 インスタンスにメソッドを追加 - nelnal@python を含むブックマーク はてなブックマーク - インスタンスにメソッドを追加 - nelnal@python

new モジュールを使用すると良いらしい。


以下、サンプル

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

import new;

class Sample:
    pass

def sample_method( self ):
    print "I am Test class member."

var1 = Sample();
var2 = Sample();

# インスタンスが持つオブジェクトのリストを表示
print dir( var1 );
print dir( var2 );

# インスタンスを追加
var1.method = new.instancemethod( sample_method, var1, var1.__class__ );

# 再度インスタンスが持つオブジェクトのリストを表示
print dir( var1 );
print dir( var2 );

[] オブジェクトのリストを参照 : dir() 23:34  オブジェクトのリストを参照 : dir() - nelnal@python を含むブックマーク はてなブックマーク -  オブジェクトのリストを参照 : dir() - nelnal@python

オブジェクトのリストを参照するのには dir を使用する。

dir( obj )


もし、グローバルスコープのオブジェクトリストを参照したければ引数無しで dir を使用する。

dir()



[] リスト -> タプル / タプル -> リスト 09:58  リスト -> タプル / タプル -> リスト - nelnal@python を含むブックマーク はてなブックマーク -  リスト -> タプル / タプル -> リスト - nelnal@python

リストをタプルにする

tuple( list )


タプルをリストにする

list( tuple )


サンプルプログラム

>> l = range( 10 );
>> l
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>> t = tuple( l );
>> t
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
>> list( t );
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
トラックバック - http://python.g.hatena.ne.jp/nelnal_programing/20071107