Zopeでtype関数が使えない
http://www.tt.rim.or.jp/~syd/?key=2001:03:14:f より
◆蛇使い 型の判別はPythonなら「type(x)==type([])」という手が使えるのだが、なぜかZopeには「_.type()」ってのがない。x[0]とかやっても文字列なら先頭1文字、リストなら最初の要素が返されるのでtryとか使えんし。 とりあえず、「x[0:0]==''」なら文字列、「x[0:0]==[]」ならリストという方法を思いついたので、これで行こうと思う。 for name in ('None', 'abs', 'chr', 'divmod', 'float', 'hash', 'hex', 'int', 'len', 'max', 'min', 'oct', 'ord', 'round', 'str'): d[name]=__builtins__[name] 実は↑こんなのがlib/python/DocumentTemplate/DT_Util.pyにあったりする。ただここを書き換えちゃうと後々大変なので‥‥
これは激しく使いにくい...
でも話題になってないみたいだし、
みんな困っていないのかな.
他人のブログから記事拝借。
時間もたっているし、違う解があるのかも...
コメント
Comments powered by Disqus