日記帳だ! with Tux on Libserver

二度目の大改造!! 日記帳…か?を継承し、より柔軟でパワフルなBlogに変身しました。

RSSに対応しています。リンク・コメント・トラックバックは自由にしていただいてほぼ問題ありません。
RSS購読方法、僕のリンク・コメント・トラックバックについての考えを読むことをおすすめします。

<< 過去

未来 >>

正統派Pythonにお近づきになろうと

CPythonを入れてみた。
わざわざCPythonというのはIronPythonから入ったからですね。
CPythonというのはCで作られたPythonの意味だからね。
普通に配布されてるPythonはこれですね。
もしこれがDで作られてたらDPythonと呼ばれたかも知れん。
ダウンロードして、インストールして、PATH通してみた。
そしてpythonとコマンドプロンプトに打ち込む。
一瞬で立ち上がった。
そりゃそうだ。IronPythonが遅すぎるだけだ。
以前IronPython 2.0を入れたのだが、まぁ相変わらずだ。
そうそう、IronPython 2.0ではDLRという.NET Framework上の新環境の上で動いてるそうだ。
だが遅い。高速化なんて狙ってないに違いない。
それはそうと、Pythonですよ。Pythonらしいプログラム書きたいですね。
fh=open('test.txt','r')
for line in fh:
print '> %s'%line.rstrip()
fh.close()
まぁきちんとPythonの機能でやってます。
まぁこうやってPythonのソースコード見ると、行数少なくて済むよね。
インデントで書くというのは、終わり括弧とかいらんということだしね。
今まで、IronPythonで.NETのライブラリ使って書いたことあったよな。
まぁあれはせっかく.NETのライブラリ使えるしー、とか言ってやってたわけだが…
import clr
import System
mysr=System.IO.StreamReader('test.txt')
try:
while not mysr.EndOfStream:
System.Console.WriteLine("> "+mysr.ReadLine().TrimEnd())
finally:
mysr.Close()
こうやって書くと、なんというかむちゃくちゃリッチに見えますね。
だってC#での記述法をそのままPythonに持ち込んでるんだから。
try~finallyとかまさにそうですよね。C#のusing構文そのまま。
まぁしかしここまで厳密にやることはなくて、上のように非常に気軽に書けばOK。
と思うのだが、どうも.NETで書くと、ここはusingだなと思ってこうなるわけだ。
まぁCPythonで正統派のPythonの勉強もしていこうと言うことです。
かのyum、RedHat系でよく採用されているパッケージ管理ソフト、はPythonで書かれてるしね。
pythonはそれ自体が対話的な環境でかなり便利。
Windows版にはあったのだが、IDLEという非常に高級な対話的環境もある。
インデントとかの面倒も多少見てくれるのでいいですね。
対話的環境というと有名なのはRubyのirbですね。
あと、Perlでは自作したperlshなる対話的環境を個人的には使ってる。
なぜかWindowsにも入れているPHPではphshという対話的環境がある。
Windowsではライブラリの加減でうまく入らん。だから改造したphshもどきと言うべきだろうか。
と、実に
python(CPython 2.5)、ipy(IronPython 2.0)、irb(Ruby 1.8)、
perlsh(Perl 5.10)、pugs(Perl 6?)、phsh(PHP 5)
となぜかこんなにも対話的環境が入ってます。
あと、Firefoxのアドオン、Firebugのコンソールもlibserverのトップページでだけ有効にして、
JavaScriptの調査に同様に使ってる。
いろいろ調べるのに便利ですよ。
Author : Hidemaro
Date : 2008/11/24(Mon) 22:02
コンピュータ・インターネット | Comment | trackback (0)
blog comments powered by Disqus

トラックバック

トラックバックURL取得

Tools