2008年12月7日日曜日

Guido's new method definition idea

http://groups.google.com/group/comp.lang.python/browse_thread/thread/5457b8649040f7ea

最近のホットな話題

class C:
def self.method( arg ):
self.value = arg
return self.value

というシンタックスシュガーを3.1で入れようかっていう話題。


self.method = lambda arg: foo(arg)

に似てていいじゃんってな意見もある。
ただ、そこから、Rubyチックにしろとかみんながすき放題言いまくって大盛況。
とりあえず、現時点ではまとめ人おつ。

2008年12月4日木曜日

Pythonの配列操作

http://d.hatena.ne.jp/tachikawa844/20081204/1228381610

joinについては
",".join(str(s) for s in score)

",".join(map(lambda s:str(s), score))
が主流なはず

あと、
spliceについて
removed = array[1:5]
array[1:5] = xyz
とすれば実現できるはずだけど、1:5の指定を一度にしたいなー。
よく考えたら配列の切り出しと改変を両方行っているわけか。
こんな風に使ったことがないけど、どういうときに便利なんだろうか。
spliceって変な関数だな。
あ、popと一緒か。
でも代入だしなー。

tailfでエンコード

tailf log|iconv -feucjp -tutf8

ではバッファリングされて出力されない。

nkfがあれば
tailf log|nkf -wu

perlがあれば
tailf log|perl -MEncode -pe'$_=decode('eucjp',$_)'

シェルでがんばるなら
tailf log|while read LINE;do echo $LINE|iconv -feucjp -tutf8;done


iconvにnobufオプションがほしい